Moved focus event listeners to Field

Added onCached and onRestore methods to States
Updated Field to remove event listeners on cache, re-add on restore