Got it working! have some tests to fill in, refactoring, and can move on