Add multiencoder

Addresses #86.

MultIEncoder.java will need to be updated as new encoders are added by updating `getBuilder()` and `setValue()` (if required).