Prepare gateway: Adds the ability to customize the Gateway.

Seer #10 for full discussion.