Partition hive fixes

* Move some code into Utility to avoid serialisation issues under special circumstances.
* Changed the HivePartitionScrougeSink to append new partitions.
* Also improved some documentation and formatting while I was at it.