Made Cluster a Super Class

The old cluster class we used before is now a super class. When you
write your own Cluster classes, have them extend Cluster. That way they
will inherit the already made evaluations etc. Please note that there
are a few changes in Cluster from the last time.