Adds prepend term.

This includes implementing it in JS, Python and Ruby drivers and
polyglot tests for the lot of them.
Removed unused typedef new_val_scope_t.
Removed variable_val_scope_t, and the unused scopes_t::scope field.
Removed unused typedef new_scope_t.
Removed typedef variable_type_scope_t, unused field type_checking_environment_t::scope.
Removed unused type variable_scope_t.
Removed unused scopes_t::type_env, scopes_t::implicit_attribute_value fields, removed unused implicit_value_t type.
Removed the unused term_info_t and term_types_t functions.
Removed rdb_protocol/scope.hpp.
Removed last traces of the vacuous type query_language::scopes_t.
Flipped the order of some assertions to put the expected value on the left.
fixing typo in admin cli help
adding an extra check for pid-file creation, and making the output more reliable, especially when daemonizing
Merge branch 'next' into sam_scopes
adds return false to each to stop iteration
fixes little problem with each return val
adds documentation for each callback return value
Made python and ruby drivers build automatically, added rql_test/run and ql2_pb2.py to .gitignore.
Add prepend to the docs.
Catch more errors and better output in rql tests (#668, #724)