Lots of stuff done, should have commited earlier