* Only normalise a search goal if it's fast
While we do end up normalising it anyway on success, there might be
things blocking it that make the intermediate terms very big, so only do
it speculatively to see if it's quick.
* Get information about names in reflection
Currently this is only whether it's a function, or data or type
constructor. I expect more may be useful/possible.