refactored some stuff
more pythonic
changed spec file heirarchy
refactored stuff into more classes