Btree tests: Use std::string.

Masstree string_type has a shallow copy; we want a deep copy.
Actually test Masstree scans.

Requires some code changes. Breaks currently.
Avoid tarded valgrind warnings
Ensure the provision of masstree print().
Make tree print output tolerable
Use new masstree basic_table::destroy().
Masstree has separately-configurable precondtions and invariants.

The fact that we turned on only invariants (and not preconditions)
with CHECK_INVARIANTS=1 was very confusing.
Configure masstree to take big enough keys.
mp_test7: Need to make copies of scanned strings.
Readable keys preferred
Merge pull request #9 from kohler/master

Scan stuff
Put Silotree files in O.silotree.
Remove txn_proto1.
is_read_only() becomes is_snapshot().

Better name, agrees with paper.
Internal: Change consistent_snapshot_tid() interface

In many places the snapshot_tid() was only used in verbosery.
Don't save it on the stack for that. And just return the tid itself.
Choose commit epoch at the commit point.
Merge pull request #10 from kohler/master

choose epoch right
Newer masstree
Proper RCU guards for masstree
makefile: add note for available mode option