Drop allocator from string init if not in C++11.
Drop seekdir:: resolution.
Use std::allocator if not in C++11.
Various C++98/11 compatibility bits.

This is crappy, but currently ranges are only used in C++11. I may drop one or
the other altogether -- probably drop iterators and just go full C++11, but
we'll see.
Fix C++11 enum types to work in C++98 as well.
Remove commented code.
Add missing check for whether a compound has already been written.
Add sz_set_default_malloc_free.

Requires a few tweaks --
1) the default allocator functions call pointers to malloc/free (or other
  equivalent functions).
2) those pointers can be modified using sz_set_default_malloc_free.
3) using NULL for either makes them use the library malloc/free.

This is mostly intended as an easy way to wrap existing malloc/free functions
so you don't have to create a global allocator, set it as the default, pass it
around, etc. In other words, one call, done for the lifespan of the library.
Add more ignore entires for shared libs and generated docs and such.
Rearrange some parameter lists and add doc comments.

Parameter lists should all be set up now so that outputs precede inputs.

The doc comments are a work in progress and I might move some of it out to
separate files over time.
Add the Doxyfile.
Make C++11 a build option rather than mandatory. For now.

I have a feeling this won't be optional for very long.
Better: make C++11 the default, C++98 the opt-in.

I will not proceed to mostly ignore whether it builds under C++98 because screw
doing that.
Only use libc++ on OS X.