Fix addContextProvider()

Update addContextProvider() so it prepends new items into the list of providers. This makes it easier for userland additions that customize EntityContext or ArrayContext. Tests were added for the replace and augment scenarios.

Refs #4967