java implementation of the enigma machine