Minimally invasive change to put logging behind a user-replaceable interface.

This could probably be done better, and there are probably awful caveats
and hidden gotchas with this approach. I REGRET NOTHING.
Simple adapter to utilise GLog with goirc.
Split handlers up into three groups.
Use a single control chan to kill mockNetConn goroutines (77->54).
Wait for all goroutines before calling initialise (54->10).
Put read lock in Connected() (10->9).
Use call checker instead of writing to shared var in tests (10->1).
Atomic incrementing of call count for dispatch test (1->0).

This probably could be done better with channels...
Merge branch 'master' of github.com:fluffle/goirc

Conflicts:
	client/connection.go
	client/connection_test.go
	client/dispatch.go
	client/state_handlers.go
	state/channel.go
	state/nick.go
	state/tracker.go
	state/tracker_test.go