- Rigid protection of guts by making member variables private and passing umodifiable list back from getMatchingActions. - Added copy contructor to allow copying of member variables from sub classes