If you do no longer use classes as collaboration holders (see below), how do you define interfaces now?
Or do you still use interfaces, but compose the concrete instance as a bag of functions?
https://gist.github.com/coderbyheart/bf6d16c6bf3d08acd547642a4d7e3e07