Fix --warnings=+all:PATH not applying to nodoc.

Removed a special case treatment of warnings with PATH from the
implementation of +all warning.  This check only worked for the
Basic warning type but not for the All type, which throws no
exception when setting of warning has no effect.

Removed the "has no effect" exception from the Basic warning type,
as it wass just a little helper notice and not really crucial to
have.

Fixes #462
Allow mixing disabled/enabled PATHs in warnings.

Implement the basic warning type like the Nodoc warning, so we can
combine +link:/src with -link:/src/ux
Minor optimization of warning rules patterns search.

Instead of looking up all the matching rules and taking the last one,
maintain the rules array in reverse order and use #find to grab the
first matching rule.