Although libhandy-1 is not widely available yet, Damned-Lies is having
trouble dealing with the submodule and it's more important to get
translations done than this build convenience, so pull it out.
See Infrastructure/damned-lies#184
Break out the generic testing code into something easily re-used, and
improve the API substantially:
* Use generics to reduce the number of equality tests to effectively
a single one
* Make all assert args consistent in that the actual value is always
listed first.
* Add convenience API for common string/array/collection assertions