Untested code:
PRT/LRT influences should be correct (even if the JSON is made up) assuming HE growth is stored doubled
Need to verify overpop planet "die off rate"

Update tools.py:
planet['hab'] is a tuple: (grav,temp,rad)
clicks in each
player['hab'] is normally a tuple of tuples: ((min_grav,max_grav,centre_grav),...)  However any subtuple may be replaced by the string "immune": ("Immune",(20,80,0),(30,70,0)) for instance.
This allows for future "off centre" hab settings without affecting the basic calculation.  The RW will currently limit the centre_grav to bisecting between the min and max.  This code can accept offsets as per the original.
fixed errors/typos, added unit test