Scriptable Interaction refactor

org.jpokemon.interaction package supports scriptable interaction
Action and Requirement are now interfaces
Factory interfaces added to build Actions or Requirements
Factory instances are managed by FactoryRegistries
ActionSet is SqliteORM query-able

I didnt convert Actions whose API i need to reconsider