Refactor visitor classes.
Merge pull request #31 from martin-helmich/feature-refactoring

Refactor visitor classes.