Merging core-wip into master.