First pass at creating the Peer Workflow appropriately.

Wiring all the peer queue into place

Updating based on rebase to fix tests