2.0 Refactor

closes #2 and #1