WIP is ready to be merged with master branch.