Minor refactoring. JavaDoc'd pretty much everything

Signed-off-by: Ollie <dzineit@live.co.uk>