Work In Progress
Now to merge back to master.