[API] update translation module

This patch:
1) cleans up code, and changes genetic code specialization to be through a scoped enum, instead of through a huge list of individual tags.
2) makes parallelization chosable by use of Serial() and Parallel() tags, instead of MACROS.
3) adds tests for serial translation in addition to parallel