0.4 WIP branch

These commits update the repository structure for the 0.4 branch. This should not be merged to master, but instead pulled in as a separate branch for continuing work on 0.4 release.