Very recent versions of Linux use __u16 for mac_header type.

This sucks if we're comparing a value to ~0U, so don't.
Whoopsy.
Support newer Linux versions.
Fix broken linuxmodule package support.

And add support for newer Linux versions, which don't handle the .ko
suffix well (so use .k.o, .u.o, etc.).
CLP updates.

- Expose the last matched OPTION, not just its id.
- Correct handling of negated-only options.
- Correct ambiguity warning.
Merge branch 'master' of https://github.com/kohler/click