Worked on Enemy editor, got first tab mostly working, added test enemy, added editor.utilities package to reduce boilerplate, refactored repetitive GroupLayout creation, added WholeNumberField