multiple optimizations

* DD optimization: reduces complexity from O(nrank) -> O(nrank^{1/3}), can help on large rank count.
* async DD, hat tip to std::future and std::sync. Requires multi-threaded MPI. To disable this feature, rebuild Bonsai with `` cmake ... -DUSE_MPIMT=NO `` and renderer with `` make ... MPIMT = 0``
* faster-read back: a new texture is made from a sub-image from fbo, and then it is read-back with tex->pbo->cpu
* default mode uses 16 bit colors, to enable 32 bit , use `` make ... FP32=1``
* if hardware support fp16<->fp32 conversion [IvyBrdige, some AMD Bulldozer/Pilediver chips], use `` make .. F16C=1`` 
* added `` --hfac #`` option to renderer ,to scale ``hfac`` in DD. As far as ``hfac >= 10^{star_scale} parameters`` visual artifacts should not appear.