Change heartbeat view to do a DB query, close #128

I confirmed that this is actually sending a query through to mysql by enabling the mysql general query log:

```
140307 16:24:35    39 Query     SELECT now() AS now_1
140307 16:24:36    39 Query     SELECT now() AS now_1
140307 16:24:37    39 Query     SELECT now() AS now_1
```

I also confirmed that when I change the query to something that mysql chokes on, I get a proper HTTP 503 response code. If mysql itself completely falls over, sqlalchemy fails to connect and we get a more general HTTP 500 failure. Hopefully it's enough to make the load balancer drop us.