ENH: Add check for ndarray/scalar in build_err_msg

This check is needed now that build_err_msg takes a precision argument,
which is only relevant if the things being compared are ndarrays.
TST: Add more tests to build_err_msg

Add tests checking for the scalar comparisons that can be formated in
build_err_msg. These additions required the rename of the tests for the
array cases.
TST: Add exception message formatting tests

assert_approx_equal & assert_almost_equal make internal use of
build_err_msg so a few tests have been added to check that the errors
are formatted correctly.