For example, let's say a non-technical person comes to me with their rough initial specification. And I sit down with them over a couple weeks and help them hone, formalize and better plan the application that they want built. What is this called? Information architecture, software architecture, specification writing, software planning, requirements analysis? What is the best, most recognizable term for this?
Quick Answer: It sounds to me like Business Analyst and Information Architect.
It seem that the person you have described basically helps to identify core requirements that needs to be considered in the application. - this is the a typical Business Analyst role.
However, determining how to build application on a high-level project specification is something that system architects do.
The process you're describing is requirements analysis:
The title of the technical person doing it will likely vary depending on the organisation - but generally would fall on a Software Architect, a Systems Analyst, or a Software Developer.
Business Analysis is more over-arching, and looks more over the general business process and systems rather than specific software solutions - they'd probably pull in a more technical person to assist with that aspect.