Incomplete draft

Driver is not done and all classes need to be cleaned up. Need to remove
debugging code too. Not complete yet.