Contextmanger changes:

- A context change and a context restore now know exactly how much tokens they have to process for a single context before they are finished.
- This allows removing contexts from the contextmap and the restoremap.
- To make this possible, the contextchange needs this information
- This also changed DIS.
- Updated dis documentation accordingly
- compiler changes will follow