Started implementation of syntatic analysis;
Added Parser class, an JavaIterator that produces program Statements;
Implemented parsing of category definitions and include directives;
Added exception parse_error;
Partial rewrite to either.test.cpp
Added logical metaprogramming functions to utility/metaprogramming.hpp
Added type_index metafunction
Started to make either template class nonrecursive
Corrected bug in either::operator=
Changed either<> methods to use an internal array of lambdas
Currently, neither clang-3.5 nor gcc-4.9 can compile this code.
Modified code to make it compile
Corrected bug in either<>::is()
Extended test/either.test.cpp to work with non-copyable types
Incorporated either<> class nonrecursive rewrite