Adding snapshot model and api

This diff creates the bare models and api for interacting with snapshots.

The Snapshot model contains the url, status, build, and associated project.

The API:
/projects/<project_id>/snapshots/
GET: get all snapshots for the project
POST: create a new snapshot for the project

/snapshots/<snapshot_id>/
GET: get the snapshot details
POST: update the snapshot details (url and/or status)