sml: inject the accept operation into visitable types

- cpp: remove extractor hacks to handle visitor, rely on property
  instead
- do not populate visitor leaves
- rebase dia sml test data