moved synthesis methods to individual files, made json writing