closes#1
Implements a background watchdog task that:
1. calls neptune-core /network rpc every N seconds (default: 10)
2. emits log message on any state change
3. sends detailed email alert to admin on any state change
Changes:
* AppState now has internal Arc<RwLock<AppStateInner>> to permit
watchdog task to mutate the rpc_client field.
* adjust application to AppState changes (use locks)
* not_found functions no longer accept state arg
* move state initialization into AppState::init()
* add optional alert parameters: admin-email, smtp-*
* add neptune_rpc module with watchdog task
* add alert_email module
* simplify main()
* log warnings if alert parameters not set
* add chrono dep
* add lettre dep
Changes:
+ present not-found page for unhandled uri paths, eg /stuff
+ display the tip-height on front page
+ add favicon and neptune logo to front page
+ use ServerDir instead of ServeFile for /image and /css
+ add help tooltips for fields on front page
+ use monospace font for digests