Pulled classes out into separate class files