1. A system comprising: a) an input connection, wherein said input connection is operable to receive a natural language input from a user; b) a computer readable medium, said computer readable medium having stored thereon a plurality of grammars, wherein said plurality of grammars is organized according to a hierarchy comprising five levels, wherein: i) a grammar from the lowest of the five levels comprises a vocabulary comprising words corresponding to natural language statements; and ii) for each level above the lowest level in the hierarchy, each grammar from that level comprises one or more elements provided by a grammar from the next lower level in the hierarchy; c) a computer, said computer configured with a set of computer executable instructions operable to, during an interaction with the user, cause the computer to perform a set of acts comprising: i) based on the natural language input from the user, determine a goal for the user; ii) determine a set of information necessary for the user to provide for the goal to be completed, wherein determining the set of information is performed using a first grammar from said plurality of grammars; iii) determine a set of missing information from the set of information, wherein the set of missing information comprises information which has not been provided by the user during the interaction; iv) based on a second grammar from the plurality of grammars, determine a prompt to provide to said user to obtain one or more elements from said set of missing information; and v) provide said prompt to said user.