Fix `.annotation default` and use `String.Other`

Default annotations with enums or attributes were lexed wrong. The type
was lexed as the name and the exttype as the type.

Annotation names and exttypes are now lexed as `String.Other`. Jasmin
adds them to the constant pool with the tag CONSTANT_Utf8, so lexing
them as strings makes some sense.

This commit also rearranges the lexer in various minor ways.