Added more string functions; improved compatibility; added tests; modified documentation generator
Major renaming, added lenses & updated winentry.

- Everything now belongs to the "cal" namespace.
- Added new lens module (C++11 only).
- Updated winentry (need further testing).
- Macros now begin with "CALICO_".
Fix punctuation error.
Added license.
Added some tests for winentry.
Currently Unicode doesn't appear to be processed/displayed properly.
Deprecated C++11 compat module + minor doc improvements.

The C++11 compatibility module is no longer being developed as C++11 support
has greatly improved.  Therefore, the compatibiltity module (both `cxx11.hpp`
and `optional.hpp`) as well as many utilities in `cxx11.hpp` have been
deprecated.  In particular, the following utilities have been deprecated (for
alternatives, see the docs on these functions):

    struct cal::get_iterator<T>;
    #define CALICO_DECLTYPE(expr, fallback_type)
    #define CALICO_ENABLE_IF_P(condition, type_expr)
    #define CALICO_ENABLE_IF(condition, type_expr)
    #define CALICO_UNPARENS(type_expr)
    #define CALICO_VALID_TYPE(type_expr, return_type)
    #define CALICO_VALID_VAL(value_expr, return_value)
    Iterator std::begin(const std::pair<Iterator, Iterator>&);
    Iterator std::end  (const std::pair<Iterator, Iterator>&);

(Note that although `CALICO_ENABLE_IF` and `CALICO_VALID_TYPE` are deprecated,
they will continue to be used internally for documentation purposes and also
to save typing.  They have been duplicated in `utility.hpp`.)

The following utilities have been moved to other headers.  Their previous
versions in `cxx11.hpp` still exist but they may have slightly fewer features.
Guards have been implemented to prevent them from being defined more than
once, so the first header that's included is the one that gets defined.

    // utility.hpp:
    struct match_cv<T, Target>;
    struct valid_cal<F(...)>; // Accepts 5+ args; requires variadic templates
    struct unparenthesize_type<void(TypeExpression)>;

    // string.hpp:
    std::string to_string(const T&);
Added `container_base` to replace `const_container_base`.

In addition:
- `integer_iterators no longer have static members `begin` and `end`.
- `const_container_base` is deprecated.
- Documentation improvements.
- Removed `explicit` from constructors (why were they there in the first
  place?).
- New `container_base` has slightly different semantics; should be clearer
  in the docs now too.
- Added missing docs for `iterator_range` (forgot it even existed).
- Added some deprecation info.
Deprecate `optional.hpp` too.
Fixed and updated `iterator.hpp`.

- Removed `begin` and `end` from `transform_iterator`.
- `transform_iterator`s now have `iterator` instead of `iterator_type`.
- Added reverse iterator support for `container_base`.
- Added `reverse_range` & some tests for it.
- Undeprecated & fixed `get_iterator` but it's now called `iterator_type` and
  resides in `utility.hpp`.
- Better documentation for `container_base` dependencies.
- Various improvements to `container_base`.
Added some tuple utilities

- Upgraded Doxyfile to v1.8.6.
- Added combine_tuples, n_tuple and pack_params
- Added *_t template aliases
- Tests for utility.hpp
- Restructured makefile for tests
- Minor doc changes
Added strictly-ordered tuple iterator

- Added strictly-ordered tuple iterator (iterate_sord)
- Fixed a bug with container_base
- Added stream-outputting for tuples
Removed const_container_base & bugfixes.

- Removed const_container_base because it's a lot of effort to keep it
  working after all the major changes.
- Removed transformed_range because iterator_range works just fine.
- Doc changes.
- Minor bugfixes.
Added scaling_lens
(+ minor bugfix for negating_lens)
Refactoring (n_tuple --> ntuple).

- Renamed n_tuple to ntuple.
- Other minor changes.
Removed iterate_sord & associated tests
Moved iterator_type to iterator.hpp
Added 'index_range'
Undeprecate 'optional'
Moved << for tuples to std namespace
Fixed a bug with << for tuples
Fixed missing include in utility.hpp
Fix GCC error about private