working on passing tests, added push_ref