Experimental synthaway 3

Please **do not** accept this pull request. This is to document my progress while refactoring.