A bunch of polish fixes for 2.0:

-All built-in Matchers are now Serializable. I needed to convert all anonymous inner classes to named nested classes.
-Objects.hashCode()
-Introducing a Types utility class with Serializable ParameterizedType and GenericArrayType implementations. Their hashCodes are consistent with Sun's JDK, although I'm not sure if that means they'll work on other Java SDKs.
- TypeLiteral Serialization fixups. Sun's Type implementations aren't Serializable, so I do some writeReplace hackery to make it just work.
- Adding some missing calls to fail() in try/catch tests
- Introducing the Asserts utility class. I'd like to keep this as lean as possible. Currently it's just the stuff we really need.
- A new TypeLiteral test that shows a problem where two keys that are functionally the same aren't equal

git-svn-id: https://google-guice.googlecode.com/svn/trunk@489 d779f126-a31b-0410-b53b-1d3aecad763e
31 files changed