Lots of changes, I should commit more often