Update uninstall plugin tester

So we can use the no site options assertion.

See #68
Introduce new un/installer class

And update the unit tests.

This implements code which keeps track of which sites the plugin is
installed on on multisite, and only attempts to uninstall from those
(unless it has been network-activated).

See #68
Include un/install class for modules & components

See #68
Don't try to skip uninstalling points component

We were previously attempting to detect if it was installed, and only
run the uninstaller if so. That’s not reliable, because of the use of
WordPoints “network” option feature. This selects a regular or site
option based on how WordPoints is activated, but it isn’t possible to
determine that on uninstall, since the plugin isn’t active at all.

See #68