mcmc_writer for unified sampling output

@bob-carpenter @syclik 

Added a new mcmc_writer class to unify sampling output, including metadata, header, adaptation, samples, and timing.  Also admits diagnostic output.

The changes slightly alter the stan output (both to cout and samples.csv) and stan_csv_reader and bin/print have been updated accordingly.  bin/print has also been updated to allow customizable precision in the output.

write_array and write_array_params were modified in generator.hpp to fix a bug where multivariate names were mistakenly concatenated.

file_include and behavior tests were added for mcmc_writer, the stan_csv_reader test was updated.  All unit-tests pass on OS X.