Add a templating engine (#27)
Add a templating engine (#27)

## Why are we doing this?

Currently, the templates require ids to be hard coded. So if you want to test them, you have to edit something that's in source control, but you can't commit the changes. This changes it so that configuration comes from a template context.

I also fleshed out some bits to make it easier to test.

## Did you document your work?

The endpoints and env vars are documented in the readme and in `example.env`. Also, the /login endpoint will warn if the new `FACEBOOK_APP_ID` is not set. SMELL: This isn't exactly consistent, see the followup tasks below.

## How can someone test these changes?

Steps to manually verify the change:

1. checkout this branch and `npm install`
2. going to `/login` should show the login button. Message "login" to the bot and the flow should still work.
3. going to `/send-to-messenger` should show some buttons. Clicking the middle button should result in a corgi getting messaged to you.

## What possible risks or adverse affects are there?

_TODO_

## What are the follow up tasks?

* Config should be cleaned up. It's all environment based, but is read in `config.js` and some only when it's needed. I was going to transition all the config to be options into the `Messenger` constructor at some point, so I didn't extend `config.js`.

## Are there any known issues?

_(Optional)_

## Did the test coverage decrease?

Decreased because I added some proof of concept code in `index.js`. Library code is unchanged.
CondeNast/launch-vehicle-fbm