A malformed URL was enough to crash the API application.
A CheckEvent triggers both a refresh of the count in the api and in the dashboard - the dashboard asking the api for a fresher value. When using websockets, the response from MongoDB could happen after the request from the dashboard. The fix forces the dashboard to wait if a refresh was just triggered.
The monitor should be able to run on an independent process, even on an independent server, to avoid side effect of server load over resonse time measurement. To that extent, the Monitor class musn't deal with the ORM directly, but communicate only with the API over REST HTTP.
Strange Twitter Bootstrap bug...
The dynamic title now signals new events (up and down).
…aightforward. Also, clarify the license (MIT).