No real code change, just renaming and adding boilerplate. Files will be re-indented in another commit, to avoid confusing git.