ipfs command uses config RPC address when acting as a client

Rather than send commands to the hardcoded "localhost:12345", they should be sent to the RPCAddress that is set in the config. I changed the daemon client function ''SendCommand'' to take a multiaddr rather than a "host:port" string. This seemed like a reasonable thing to do since ''NewDaemonListener'' takes a multiaddr as its bind argument.
 
I also made a minor fix to a dht debugging printf.
Oh that's why i couldn't hit some cmds! good catch.