Revise import tests to show order of overriding of settings
Add note regarding defaults merging

Current implementation has setting provided on import overriding
values set form ENV vars (with values from config files overriding both).

I suspect that ENV vars should override the package defaults and whats provided
on importing the app (or Dancer2).. Need to think this over some more.
Role::Server - make host, port and is_daemon read-only attributes.

A server object is configures then Dancer2 is first imported. These attributes
can be read-only now that their settings can be specified as part of importing
Dancer2.
Rework script generated dispatch.f?cgi scripts to use import settings

Setting apphandler after importing Dancer2 has no impact; there is no trigger
and by that stage the server object has been created. Instead pass the required
apphandler and environment strings as imports to Dancer2.
Rework tests that use Test::TCP to pass port on import of Dancer2.

With the server port a read-only attribute (and no existing trigger on
set port => nnn), we need to know the port before importing Dancer2 in
tests that use Test::TCP.

Use a begin block to find an empty port, so it can be passed along to the
server config when Dancer2 is imported.