Added a download runtime function.

This will be completely invisible to the user, unless he/she meets the
following requirements:
 - have a mxnode: mxjar_repo location that is writeable for the user
 - have a new mxnode: runtime_download_location option
 - have an unpacked MDA

Also: added unpack functionality to mdautil.py and renamed that to util.py.

Note: Memory footprint
Because httplib2 does not offer a chunked download API, the entire
runtime is download into memory, then processed by tarfile.extractall.
This could have a large memory footprint. However, as this will usually
be done when the application is not running I do not expect problems
soon. We might switch to urllib2 which does support chunked transfers,
then we can also provide a progress meter.
Download runtimes: Replace httplib2 by subprocess (wget, tar)

This offers much less debugging and is not clean at all, but considering
the non-streaming problems with httplib2, the inability to add a dependency
on urllib3 or python-requests makes this an adequate solution.

It removes the memory overhead by piping wget directly to tar xz.