Have the SpaceHistory Actor track the current events

(User Story, To be Fixed , Priority: High, Test Status: No automated tests yet , Reported By Justin du Coeur, )
Summary: In order to make it more efficient to undelete accidental deletions, keep the recent states and events in memory.
Have it store the most recent n events, starting with a snapshot of the state, so that rolling back to a recent state, or viewing the most recent history, is instant.
The implication is that the SpaceHistory actor should boot on Space startup, listen to all Space updates, and record all of the events (and Space versions) in a window that gets up to 100-1000 events total. It should not bother to preload: this is just an optimization for events that happen since the most recent load of the Space. The window should be rolling and bounded -- it shouldn't grow infinitely, just be big enough so that we are confident that it can quickly handle quick changes.
Use the new Testing Ecot to track history scans, and confirm in unit tests that undeleting a recent deletion does not need to do a scan.