Added support for externally sourced Variable values

It is now possible for the value of a Variable to be provided from an asynchronous API source.

Consider the following example: the choices presented for a Variable named US_State is a list of the United States and territories. The list needs to be fetched using the instructions in the Variable property externalApi. See Variables for more information.