Major refactor to use python conventions for class, method and variable names.  Also broke out some code into modules and common places.