moving geo config data into subsection of config
loading config from json file on startup

and actually using the data that is in there
- if we get insufficient data back from geoip, use config geo data instead
- dynamically manipulate the state machine
  splicing in states for configured alarms
- a single onalarm() callback now
  reads the alarm config and shows alarm time values