determines if the coloring is for the entire parallel grid/graph/matrix or for just the local ghosted portion
`IS_COLORING_GLOBAL` - does not include the colors for ghost points, this is used when the function
is called synchronously in parallel. This requires generating a "parallel coloring".
`IS_COLORING_LOCAL` - includes colors for ghost points, this is used when the function can be called
separately on individual processes with the ghost points already filled in. Does not
require a "parallel coloring", rather each process colors its local + ghost part.
Using this can result in much less parallel communication. Currently only works