core interface for interaction between gui and core