OrderKey refactoring.

Hi Brian,

This pull request should do the majority of changed we have talked of.

It is contain 800 added and 1000 removed lines, negative net!

Remaining nontrivial items:

1. Factor out secondary key increment code into a separate file.
1. Initial stream creation should be simplified.
1. Add a default stream definition macro with a default secondary key type.
1. Add a test for different values of ```ConfigValues```.

New files:
1. src/magic_order_key.h.  I suggest we rename it to just order_key.h right after the destiny of this PR is settled.

Deleted files:
1. src/entry.h
1. src/generic_order_key.h
1. src/key_schema.h
1. src/order_key.h
1. src/ranged_data.h
1. src/storage_key_builder.h
1. src/stream_instance.h
1. src/stream_manager.h
Even though we aren't managing memory we should probably create a virtual destructor.