working on proper imports and general cleanupe, still incomplete and need to resolve circular import issues