The Ghost in the Machine: 5 Java Bytecode Mysteries Explained