Major refactor of matchblock -> matchtask

matchtask is more aware of the action being taken
tasks are normalized to all contain an action with a module
and associated arguments.

Added tests for the new `utils.normalize_task` method
Refactored `CommandsInstead*` rules to use matchtask, fixing #16.

Moved `TaskHasTag` rule from default rules into examples as it
is not a core requirement.

More PEP8 fixes