Upgrade Hamcrest to 3.0

If upstream changelogs are to be believed, there are no
breaking changes except for:
* The packaging method being changed[1] from several JARs
  to one JAR.
* An annotation, `org.hamcrest.Factory`, being removed
  (we don't use it, and upstream says that people should
  not have been using it externally)
* The minimum version being upgraded to Java 8[2], 
  which is already the case in Ant.

[1]: https://github.com/hamcrest/JavaHamcrest/releases/tag/v2.1
[2]: https://github.com/hamcrest/JavaHamcrest/releases/tag/v3.0
6 files changed