WIP on tim_server_status
Implements rethinkdb.server_status pseudo-table.
Add a test for rethinkdb.server_status. It mostly passes.
Made rethinkdb.server_status correctly report ports even if they were chosen by the OS instead of being specified directly.
Merge branch 'reql_admin' into tim_server_status
Remove code to automatically rename servers in case of a name collision.
Fix type signature in ql2.proto comments for line and polygon
Many minor style and bug fixes:
- Remove spurious backslash in serve.cc
- Use uint16_t for ports instead of int
- Remove spurious include in datum_adapter.hpp
- Remove anonymous namespace in server_status.cc
- Remove incorrect comment in server_common.cc
- Be rigorous about home threads in pseudo-table backends
Got rid of datum_t::operator*
Use microtime_t instead of time_t.
Removed datum_t::operator->
Removed datum_t implicit conversion to bool
Fix permissions in packages

Review 2055 by @larkost
Closes #2927
Merge branch 'daniel_3003' into next
merge of #2940 polyglot/arity/55 needs fixes for Python 3.3 and 3.4
Fix typo in comment
Merge branch 'daniel_2985' into next
Merge commit '334516d6f618970adce3b9595f0dfdee76f64481' into reql_admin

(This merge is on next right before the change that removes the fake pointer interface from datum_t. I'm merging it into reql_admin separately to make the fake pointer merge as small as possible.)
Merge commit 'baa9109cb1c25992443eb1705fa39479f4e9aeac' into reql_admin

(The commit being merged into reql_admin is the one that removed
the fake pointer datum interface from next. I merged it specifically
to keep the merge as small as possible and avoid including any other
changes in the merge.)

Conflicts:
	src/rdb_protocol/btree.cc
	src/rdb_protocol/store.cc
Actually use uint16_t for ports instead of int. (My previous commit forgot to change the one place that actually mattered.)