Added method 'SplitIntoDominations' and cleaned up the code a bit