Font Icon setting, and setting infrastructure

Uses a setting to allow, disallow use of Font Icon.

This probably needs tweaked since the Font Icon is used anyway in
some places, and never used in other places. Possibly the option
should be "Use Font Icon for dropdowns" (or maybe that should always
be enforced.

But this is a start on the infrastructure needed for those decisions.

Tried to cut down on the needless repeition in Moodle theme settings
via some "convention over configuration" too.
add an inverse navbar option

All the swatches come with this option, plus it gives people a
minor headstart on creating either light or dark headers for
custom themes.

Some more changes to my settings infrastructure, as I was getting
some weird errors.

Wondering whether definining the helpers as anonymous functions
rather than importing the lib file might help.
Merge pull request #188 from ds125v/navbar_inverse

Navbar inverse