Improved streamlogger.

Simplified the streamlogger code.
Extended it to allow for local non-http subscribers.
Added tests.
The non-http subscription will be used for additional
monitoring and status reporting.
txlogz first cut.
Update Tools.markdown
Making svrshard objects backward compatible

With bson decoding. I wanted to add a new field to SrvShard,
but I can't as is.

Sugu, I'd like to monitor the unknown fields, instead of logging them.
Let's talk about it.
Fix typo
Dropping the logging for unknown fields.
Merge branch 'master' of github.com:youtube/vitess
Fix test for unrecognized tag
querylogz
Formatting tweaks
Adding timeout support in VTGate
Fixing all bson encoders to support extra fields.

In the process, fixing a bug in '*Session' decoding,
where a field with a 'bson.Null' kind would fail.
Merge branch 'master' into replication

Conflicts:
	go/vt/topo/srvshard_test.go
Adding ShardRemoveCell command.
Merge branch 'master' of github.com:youtube/vitess
Merge branch 'master' into replication
Merge branch 'master' of github.com:youtube/vitess
Categorize upserts as PASS_DML

Upserts are not safe for statement based replication:
http://bugs.mysql.com/bug.php?id=58637
So, vttablet now categorizes it as pass-though DML,
which will eventually get rejected because of
update stream & rowcache.
In the future, we can allow a 'dumb mode' where
PASS_DML plans are allowed if people don't care
about rowcache or update stream.
Addressing comments from review.
Merge branch 'master' into replication