packageui// ReturnInterface is returned by the Intercom interface when a method is calledtypeReturnInterfaceinterface{Get(iint)(interface{},error)Size()int}// Frontend is the basic interface for calling arbitrary methods on something that// implements a front end (GUI, CLI, etc)typeFrontendinterface{// Checks whether a specific method is implementedSupports(methodstring)bool// Call calls the given method on interface it implements. This will return// an error with errNotImplemented if the method hasn't been implemented// and will return a ReturnInterface if it does.Call(methodstring)(ReturnInterface,error)}