Major Refactoring

Should be about ready for initial release