Pig support

I added support for using the ua-parser in pig.
This allows using the ua-parser library for doing clickstream analysis on a Hadoop cluster.

Implementation overview:
- Some cleanups and additional safety checks in the java library
- Additional CachingParser (java) to avoid needless CPU usage when parsing the same UA again and agian.
- Separate pig client that depends on the java version of the library.