Finish basic API

Here are the basic API endpoints (create, read, update, delete), plus automated tests so we can make sure the API still works when we make changes down the road. I've also added an endpoint that returns an array of all cocktails that match a given ingredient list.