Feature-extension dependency system

Implemented a system whereby features may be tagged to depend on
extensions being enabled by the target wiki.

Features that depend on a missing or disabled extension will be skipped
and a warning will be shown at the end of the feature summary. Note that
the latter warning is only shown when using the default "pretty"
formatter.

Change-Id: I72c81a09c5c84cfebfed3eadec533f58cdc243c1