Clean up potential NullPointerExceptions.

- Construct BufferedReaders ahead of try blocks
- Don't catch exceptions in tests
- Specifically check for mismatched braces in patterns
- Fail on an unknown numeric type
Fix potential NullPointerExceptions.

- Allow for a null location when logging
- Don't try to use a null LocationFinder