Track when an agent was last heard from
Update last_heard_from when an agent is updated
Regularly poll agents

This will regularly poll all agents to make sure they are still
available and really have all the tasks they should be having.  Busy
agents are by default checked more frequently than idle ones.

This makes a few assumption about the agent API, which is not available
yet, at this point in time.
Fix typo
Bugfix: include read_env_int from core.config
Agent poll intervals in seconds, not minutes
Actually write all changes to agent to the db
Swicth from http.client to requests
Bugfix: actually get agent, not just the query
Bugfix: agent.last_heard_from can be None
Only accept OK from apent-api tasks endpoint
Fix log message
Schedule send_tasks_to_agents when necessary
Prefix environment variables with PYFARM_
Use UTC time everywhere
Fix order of imports
Cosmetic/consistency: Double quotes for strings
Retry contacting agents

So far, this relies on celery's defaults for retries, atm that is three
retries, not counting the first attempt, with three minutes of delay.
Two more places that needed to switch to UTC time
Merge pull request #131 from guidow/track_agent_last_seen

Track agent last seen