Fixed GUI Server to load cached job jars

by hacking the system ClassLoader, assuming it is a URLClassLoader, and
using reflection to call addURL method to add the cached jars.

Known bugs: things could go wrong if user launches jobs with jars that
contain different versions of the same class, then tries to load both
jobs while the server is running.  In such case, user can restart the
GUI server before opening the other job.
Read complex Writable from byte array
Merge pull request #53 from netj/fix-gui-classpath-problem

Fixed GUI Server to load cached job jars
Remove dead codes.
Merge pull request #54 from tbq/master

Read complex Writable from byte array
Merging from upstream