Performance tests for chipper with & without cache

autzen-thin.las is probably too small to make a really good test, but
it's available in the source.
Avoid unnecessarily formatting in getDimension

For preformance, only format error messages if we're about to use them
in throwing an exception.
WIP optimizations to getDimension()

* Move name-based getDimension() implementation to getDimensionPtr,
  which returns a pointer rather than throwing exceptions, and also
  takes const char* strings to avoid additional allocation.

* Move las point dimension caching to use getDimensionPtr for efficiency

* Make do with a single lookups of multi_index container by name, by
  using equal_range early on.

* Fix potential bug in dimension inheritance by ensuring that we only
  iterate over the discovered equal_range, rather than potentially
  continuing to the end of the container.

TODO:

* UUID string parsing is BROKEN here - need a replacement for
  boost::uuids::string_generator which doesn't routinely throw.

* The API changes aren't well thought through here - getDimensionPtr()
  should probably replace getDimensionOptional()

* It's nasty having all those getDimension() variants - reduce them in
  number using boost::string_ref ?
Merge remote-tracking branch 'upstream/master' into getDimension_optimization
getDimension perf tests + use string_ref for dimension names

* Convert C-style implementation of getDimensionPtr() to use
  boost::string_ref for clarity.

* Add performance test cases to exercise various usages of
  Schema::getDimension*().  These underscore the importance of avoiding
  exceptions here, which are roughly 100x as expensive as a dimension
  lookup.

* Included with performance tests is a helpful header from OpenImageIO
  for convenient high resoultion timing.
Fix bug which crept in when refactoring getDimension()
Optimization: remove getDimension("<uuid-string>")

This rarely used functionality forced each incoming name for
getDimension to be parsed as a UUID, only to determine (in the vast
majority of cases) that the string was not a valid UUID.
Turn off overflow checks in Dimension::removeScaling for now #166
Merge pull request #166 from PDAL/issues/166-removeScaling-check

PointBuffer::removeScaling's checks for overflow are busted
Use string_ref in getDimensionOptional() for consistency

Also use default string_ref constructor in empty namespace version of
string_ref to avoid a needless call to the const char* constructor.
Minor naming cleanups for clarity and consistency
Merge pull request #165 from PDAL/issues/165-remove-chunk-size

Remove the chunk_size option of Writer.
Merge branch 'c42f-getDimension_optimization'
allow specifying the 'Z' dimension name with an option for interpolation #124
oracle cleanup script tweak
#ifdef the log output for filters.cache. This ends up being touched per-point and is expensive if you don't want it
use PointBuffer::calculateBounds instead of driver's version
don't allocate a vector for every point added to the loop in calculateBounds
add OpenBlob/CloseBlob methods
use OpenBlob/CloseBlob methods to reduce round-tripping to db