Lots of fixes/features :)