Add test for fold (for 0.3 branch)

This adds a very basic test for `fold_`.  It also includes a very minor code cleanup:  use the new [(<>)][1] operator instead of `mappend`, and define it in the `Compat` module if it's not available.

 [1]: http://hackage.haskell.org/packages/archive/base/latest/doc/html/Data-Monoid.html#v:-60--62-