Append each member of tuple/fusion instead of adding tuple/fusion

 * Warning: break compatibility with boost 1.35 released in 2008!
 * when calling use() or into() with tuple or fusion objects, it stores
   reference to each member of object instead of storing object reference
   thanks to boost::fusion::foreach.
 * Job is done by new use_type_vector and into_type_vector classes
Replace prefix underscore with suffix in private member names