refactor to be 100% unit testable, use Buzz instead of Zend for http