Add support for repair step classes

This also makes it possible to unit test each repair step class
individually
Added RepairStep interface and default repair step lists

The updater is using "before update" repair steps and "regular" repair
steps.
The "regular" repair steps are also used by the CLI tool.

Currently no steps exist but can be added later in the static methods in
the \OC\Repair class.

Added unit test to test messaging, error and exception cases.
Fixed instanceof to use interface instead of class
Merge pull request #8917 from owncloud/repair-routine-base

Add support for repair step classes