Add ability to login and push using REST api

also simplified some of the benchmarking so we have one channel
with Iterations, Steps and Errors rather than trying to manage
three seperate channels