Includes new add method that uses .clone() for support.

Added new tests for bsearch methods and changed "add" to "insert"
auto merge of #11961 : niftynif/rust/btree, r=brson

I implemented an add method for the btree in progress.  It is intended to be refactored later using an alternative to .clone() that passes the borrow checker, but for now, it works as intended. r? @catamorphism