yet another change in the syntax:

interface will contain both virtuals and accessors
non-virtual methods of the interface are defined outside