better logging for ping
turn logging on by default, also make Provide not fail when no peers connected
make a few tests perform operations in two directions instead of one
handshake: error out while sending + dbg
ping: return sme msg

This fixes the broken pinging. (the issue was the cluster
level, it's bein set incorrectly (off by one))

Anyway, this works now:

    [peer: QmfQTbC3LxfpK5WoyHW2WgnAzo6d6GePuq2wHTsJNXM5PS] Sent message type: 'PING' [to = QmNXUeFrV9gxR4aqJddEsfhWZLSJrUsfpUSeRb3R7xvSp9]
    [QmfQTbC3LxfpK5WoyHW2WgnAzo6d6GePuq2wHTsJNXM5PS] ping QmNXUeFrV9gxR4aqJddEsfhWZLSJrUsfpUSeRb3R7xvSp9 end (err = %!s(<nil>))

cc @whyrusleeping
Fixed a link in the README (and capitalization).
Merge pull request #107 from epitron/master

Fixed a link in the README (and capitalization).
Merge pull request #104 from jbenet/feat/fix-ping

Fixed Ping (minor)
implement a mock dht for use in testing
change back to using Client method
move mock routing tests to proper directory
Merge branch 'feat/mock-dht'
feat(util:context) add error logging to context

This commit...

is a second attempt at: https://github.com/jbenet/go-ipfs/pull/68

partially addresses: https://github.com/jbenet/go-ipfs/issues/66

is the result of discussion at:

    https://gist.github.com/perfmode/f2951c1ed3a02c484d0b
Merge branch 'ipfs-context-2'
feat(bitswap:network) propagate errors up the stack

Rather than pushing errors back down to lower layers, propagate the
errors upward.

This commit adds a `ReceiveError` method to BitSwap's network receiver.

Still TODO: rm the error return value from:

    net.service.handler.HandleMessage

This is inspired by delegation patterns in found in the wild.
feat(net:service, routing) remove error return value
Merge branch 'feat/network-error-propagation-1'
switch over to using a lock file for daemon connections
respect the lock file, also cpu profile
don't load identity in offline mode (temp)

**For now**, we don't need to load/parse the private key
(which causes a signficant delay in commands) when doing
things entirely offline. This may change, and in that case
the private key should be loaded on demand.