lots of updates, forgot to commit a while ago