Default logging level changed from error to warning. Fixed an occurence of 'warn' being used as the level rather than 'warning'.
Improved controller handling.

- Hat definitions and handling are now in XML (likely to cause regression; all controllers need to be tested again).
- Repeated or bogus events are pruned before they get logged or delivered.
- Another controller mapping added to XML.
- Better (end-user oriented) log messages.
- Fixed a number of occurences of 'warn' level.
- Made findButton and other systems search specific devtype before DEVTYPE_GENERIC.
- Guitar pick up/down are no longer aliases to generic up/down.