shoal first commit.
Added geoip functions, updated web interface
added license
Added url to find nearest squid, added new thread
Added new class `middleware` to deal with deleting inactive squid every
`interval` seconds, this class also maintains the integrity of the
GeoLiteCity database.
Moved static folder to save directory as shoal.py due to pathing issues
with development webpy server.
Added squid favicon!
Added supporting python functions to finding nearest squid in geoip.py
Changed shared resource between threads `shoal` to be a dictionary with
the key being the public ip (can change) of the squid server. Removing
from the dictionary is O(1) time, which was better than my array
implementation which was O(n).
Added some css to html pages to spruce them up a bit.
Updated squid class and error handling

If amqp message is missing the proper keys the message will be safely
discarded and not kill the entire application.

Changed around some functions dealing with geolitecity database, and added simple
check whether it needs updating at runtime or not.

Trimmed some extra code that wasn't needed.

Removed web.py config to be added to global config.

fixed formatting and removed unused imports.

Added better description to amqp message format

removed code used for debugging.
Fixed finally block, updated index.html
index.html will not use ACTIVE_TIME global variable to issue the proper
css class to the row.
Added basic send.py script to send data to rabbtmq
Fixed some errors due to changing SquidNode class
Fixed webpy to display squids in order.

Added import sys to send.py

added rabbitmq_server to global variable in shoal.

added alive column in list of squids, showing how long its been running.

changed nearest squid to return json, removed json.html as it was not
needed.

removed .swp file
Created shoal-agent for each squid server.

Added simple script to get instantaneous byte rates in and out of
shoal-agent server. Can be more robust in the future.

Edited template to display new load values.

Added auto refresh on index.html every 30 seconds.
added netifaces module to get pub/priv ip on squid

fixed minor type error in index.html which only displayed minutes after
2, instead of 1.
Added description to ShoalMiddleware Class.
Added global config file and settings.
Restructured shoal directory to make using the configuration file easier
for the time being. Changed every file to use config settings.

Added config.py to get settings when prgram starts or use defaults.

Modified send.py to send its unique key every message incase the public_ip
was the same for multiple squids.
Fixed exiting errors with shoal and ctrl+c

restructured some folders, and paths.

Added exchange and routing info for rabbitmq

fixed up templates.

added additional code to use the exchange.
daemonized send.py script. updated setup.py

added version file. removed netspeed.sh in favor of a python version.

removed tests for now, as there are none.
Added shoal_agent startstop script and config.

Modified nearest squid algorithm. If there are multiple squid at same
location it will return ip of squid with lowest load value.

Modified load data sent, as we only really care about the network
traffic out of the squid for the time being and not the network in.
Updated READMEs and adjusted shoals config.py
Added affix to side when more than 30 squids.
Fixed README, fixed index page.
Fixed up alignment in html. Adjusted rabbitmq code

Added README
Added basic logging
Fixed some errors and logging messages

Added basic logging to shoal_agent
Merge branch 'master' of github.com:hep-gc/shoal

Conflicts:
	shoal.conf
	shoal/config.py
	shoal/geoip.py
	shoal/shoal.py