more go-friendly api

coming back to this library after beginning to use it in a new project revealed some major usability issues, specifically around coding patterns which are common in go. this PR proposes a new user-facing API which uses fewer of the Java-inspired patterns (commands as classes) in favor of something more akin to using native goroutines.  

specifically, we punt on handling any sort of output from the hystrix command and assume the developer will (if they need the output) publish something to a channel. where someone may have banged the drum of "go should have generics to stop using ```interface{}```", we just use existing go coding patterns and allow the developer to use a channel which is specifically typed to the objects they want the command to return.