with_max_wire_version test framework for wire version feature testing

RUBY-676
insert partial batch up to serialization error - logic fix for ordered semantics

RUBY-676
refactor bulk execute into operation and command writers

legacy command emulation must use single write operations, including inserts
unify bulk insert ops via {:d => document}

RUBY-676
bulk execute documentation with performance warning for legacy servers

RUBY-676
bulk execute merged result with tallying, index mapping, top-level processing

RUBY-676
rename to batch_write from batch_write_incremental

RUBY-676
minor: locking mime-types verison for ruby 1.8 compatibility
RUBY-698 Only test regexes with aggregation if version > 2.3.2. SERVER-6470
batch_write call cleanup and alias for future selection

 alias allows easy mapping to batch_write incremental/partition

cleanup of Hash method extension now in test/helpers/general.rb

RUBY-676
minor: increasing min/max heap size for jruby in travis
minor: modifying travis environment vars
HEADROOM constants used in construct_query_message

allow headroom for new write command overhead
definitions moved to MongoClient
limited_collection tests use constants

RUBY-676
batch_write_partition - compatible with batch_write_incremental

can alias in for full compatibility and performance testing

RUBY-676
"op_type" consistent var use for :insert, :update, :delete

RUBY-676
remove journal from write concern for bulk API tests as journal is off for Jenkins

RUBY-676
RUBY-698 Use the appropriate constants for testing bson regex deserialization
minor: removing compiled c-extensions with test cleanup
RUBY-708 deprecating save_auths in DB#authenticate
RUBY-708 fixing tests for save_auths deprecation
RUBY-708 fixing auth tests for save auths changes