Refactored DistIOUtils code to make Kryo-based saving/loading RDDs fast.

Fixes issue #12 - this is useful for caching and retrieving RDDs from disk fast.

Not much changed here. Guess I can merge to nildev?

Note: The pull request is to the **nildev** branch. Let me know what you think and I'll merge this into nildev.