Fixed up pretty much everything