An Algorithm which can be used to find a good, but not necessarily minimal, Edge or Vertex coloring for a Graph.