Add aggregation and display of metrics obtained from Spark

This change adds an new command-line option called "print_metrics" which causes a listener to be registered with Spark, which accumulates metrics when each task and stage end. When a command is complete the metrics are logged to stdout.
Running ./scripts/format-source on files checked-in by previous commit (498d8377651d21e86ff642071e6c9b1d585db4cc)
Logging metrics to the Spark logger instead of stdout
Set a larger output buffer for printing metrics
Changes based on review of PR 292 (Add aggregation and display of metrics obtained from Spark)
Removed btc ascii table library and added class to render ascii tables
Merge pull request #293 from nfergu/spark-metrics

Add aggregation and display of metrics obtained from Spark