Add Topology checker to clusterpy

If the shape file contains areas that are disconnected, clusterpy will
not deal with it. Since the algorithms work on spatial contiguity.
Solves #1 in a way

Instead of messing with all the cases that island can bring. If the
topology is not what is expected, an error message will tell the user
which areas are causing trouble.

A second message was added to tell the user that the clustering process
finished.