* create StateSerializer, an ITextStatable implementation using the Serializer class, and wire it up to the TI83 core
* wire StateSerializer to A2600 core
* wire up StateSerializer to AmstradCPC, C64, and ZXS
* wire up StateSerializer to MSX, A27800, and Coleco
* wire up state serializer to ChannelF, Vectrex, Intellivision
* fix GambatteLink to implement ITextStatable, implement TextSerializer in O2
* StateSerializer - wire up a loadstate callback and implement StateSerializer for NesHawk, a bit of rework to subNesHawk as a result
* fix subneshawk text savestates
* StateSerializer - implement byte[] buffer storing (optionally), wire up to PCE
* implement StateSerializer to SMS, tweak GGLink accordingly
* implement StateSerializer in GBHawk, fix link cores accordingly
* StateSerializer - use Serializer static methods to create serializers
* Rewind & State config - remove the default option
* remove the savestate type of default, not that this is a breaking config change for anyone that had specifically set savestates to text
* remove BinaryStatesPreferred from IStatable and use config setting when starting movies from "Now" in record movie dialog
* remove BinaryStatesPreferred from cores
* make text savestates an extension method off of IStatable and an inteface ITextStatable it uses if the core implements it. This will allow cores to opt in to text states if desired
* make cores with actual text savestate impleemntations get ITextStatable, remove text state logic from cores that just have a binary as as text implementation
- Fix power on Behaviour
- Fix cycle timing
- Fix timer interrupt frequency
- NOTE: 'ON' buton on virtual calculator doesn't work since it's only a 'click', need to use shortcut key to turn the calculator on