add ASSERT_APPROX_EQUAL to unit tests and use where applicable