boost::spirit: optimization of decimal_real_wrapper (21, somewhat works)

Rewrite to reduce number of memory allocations (some numeric errors remain).

Signed-off-by: Alex Dubov <oakad@yahoo.com>