Adds pathspec classes.

This can be used for recursive without and pluck etc.
Make pluck use pathspecs.
Things are sort of working.
Add a way to print pathspecs.

Also make pathspecs a bit cleaner.
Adds some debug printing.

Turns out it was actually working correctly. I was just doing a wrong
test.
ruby fast insert
fixed variable reference bug
Adds test which use the new pluck syntax.
Adds more tests for pluck.
Merge branch 'next' into jd_patternmatching_pluck
Only construct pathspecs once.
Makes several changes to how tests work.
Catch exceptions from malformed pathspecs.
Don't recurse in sequences of sequences.
Change type of buffer vairable in get_rethinkdb_exe_directory
Launch backup scripts using proxy shell script and add an install-backup-scripts target
Short circuit in contains.
Remove print tabs function.
Revert "Only construct pathspecs once."

This reverts commit 54fe28eb1b7ccae2a1e1b450b11e18ec50c0c66b.

Conflicts:

	src/rdb_protocol/terms/obj_or_seq.cc
Catch an for malformed pathspecs. Add a few tests.