Add additional tests; rewrite menu render to address reference bug. Closes #49