Incorporate uaparser feedback, make flatjar work.

* Handle running inside a flatjar. (technique taken from geoip filter)
* Rename field/container to source/target
* Allow target to be an existing hash in which case data is merged
* Better comments
* Allow arrays for input (though only parse the first element)
* s/'/"/ and add parens to function calles
* Changelog entry