Try to autodetect evdev inputs instead of relying on lookup tables

Determine type of evdev input source from the event types and codes
it supports instead of relying on device name based lookup tables.

Blacklisting (both hardcoded and from ini-files) is still supported.