Removed unused exception from API
Re architectured client API - now allows multiple implementations

Preparation for adding WS API - related to #14.
Multiple breaking changes in this commit, doc should be updated ASAP.