Changed type of exception in ImmutableEntry.
Added Context and changed NodeObject to an abstract class.