fix simplify crap and add tests