rewrote contacts to inherit from client.

resolve bounty #106
Merge pull request #31 from aaronmallen/feature/asm-106

asm-106