Major update

-All methods belong to a single class
-Added more example data
-Additional error handling
-Added more diagnostic fields