Refactored BaseConsumer, decoupling authentication protocol.
Parameterized request method in BaseConsumer, defaults to 'POST'