Closes #3181 (closed). Adds JSON marshalling for basic types to encoder machines.
Changelog: refactor