Implement interrupt state and jump point caching

It's not enabled by default yet because I don't trust the code