Refactor plus Failed attempt to fix changeVerticeColourToAnotherAvailableColour

refactored so all methods use vertices in ID order unless specifically
stated otherwise
attempted to fix changeVerticeColourToAnotherAvailableColour but failed
- gives invalid results