Add toString to GenericLocation. Test it.
fix all callers relying on to/from being strings.