MB-9156: Refactor tap code and add upr producer/consumer

Refactoring of ep-engine to support both TAP and UPR.
UPR consumer "mutation" and "deletion" and producer "step" support.
This is the first checkin and more will follow.

Change-Id: Iaf5c566243d6ac6600f6df5a4384c06ccacf0588
Reviewed-on: http://review.couchbase.org/29598
Reviewed-by: Michael Wiederhold <mike@couchbase.com>
Tested-by: Michael Wiederhold <mike@couchbase.com>