Mostly complete, fixes many bugs
Working
merged
Merge pull request #13 from KoryNunn/refactor2

Refactor2