Better handling of Java interfaces

Handle Java interfaces without relying on untracked newlines so that
nl_remove_extra_newlines can be nonzero. Also handle the keyword
@interface during tokenization so that it is not mishandled. Tests
80011-80014 are added as well.

This addresses issue #193