I'm just screwing about in java, this is a bit of a testing ground for mechanics and such