Use *Client instead of Client

* This will enable rate limiting in the future
Change Item to an interface backed by underlying item type

* This makes the most senes as the HN Item effectively exposes methods,
not structure