An exploration of Douglas Hofstadter's MU Puzzle in Java