[FLINK-610] Replace Avro with Kryo as the GenericType serializer

This pull request is basically a collection of the work of others ;)
@tillrohrmann contributed some of the tests (in particular for the serializer itself). He did the integration with [Chill](https://github.com/twitter/chill).
@twalthr contributed one commit for fixing a TypeExtractor bug.

I added two IT cases, checking it to work with the following types:

```java
java.util.List<String>
scala.math.BigInt
java.io.File
java.math.BigDecimal;
java.math.BigInteger;
java.util.HashMap;
java.io.Serializable;
```

I also tested it on a cluster with a Collection of Objects (containing Strings and Integers). It worked. I didn't test it for performance yet. The purpose of the pull request is to extend the type support for cases we don't cover by our own serialization framework.

I'll now test the change with the code that brought the issue on top of my TODO list: https://issues.apache.org/jira/browse/FLINK-629?focusedCommentId=14241856&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14241856