Aponic: algorithmic MIDI music using Java Sound