v1 complete

Tests passing (except 1 - minor)