Initial directory structure.
Importing initial version of core Origin Libraries.
Added 'handles' back to adjacency matrix. Uses handle_t from old trunk. Started implementing the member functions for directed adjacency matrix.
More small updates to directed adjacency matrix member functions.
Adding a range adaptor for keys of associative ranges.
Fixing compiler errors in the key range.

The range should probably just keep the begin/end iterators
rather than a reference to the underlying range. Not sure if
there's an issue with either approach.
Finished out edge and edge iterators that work with source() and target(). Iterators are implicitly convertible to vertex types.
Changed directed_adjacecny_matrix::out_edge_iterator implementation to favor divmod to get source and target rather than store each seperately and go through an if statement or two each time one uses ++i or --i.
More adj matrix stuff.
More adj matrix.
Adding an initial version of the optional class.

This is entirely untested.
Finished and tested the initial optional implementation.
Replaced the equality/ordering facades with a more general mechanism.

Implemented equality and ordering for the optional type for all of its
possible values (T and nullptr_t).
Updating graph library with new equality facades.
Implemented protocols for comparisons on objects of different type.

Updated the optional class to use this framework and started writing
documentation about the protocol/facade techniques.
Finished Creating the iterators.
Added equality comparator to directed adjacecny matrix.
Slowly adding concepts back to the core library.

This reimplementation combines static assertions and trait-style
checking.
Adding a new unused warning to the make file.
Continuing work on concepts.