The Apps module currently makes an assumption through several $_SESSION values that there is only one app server as part of the install profile process, but what if I want to be appscrazy and have more than one? This patch moves the setting of the $_SESSION values further down in the load order and, instead, stores app server information by server name which it then picks up on later.
As you can see, I am getting the server name again in the apps_profile_apps_select_form() using some string replacement on the active task in the form state which seems like the only way to figure out what app server we are currently working with. Although not ideal, the active task is set in a consistent pattern ('apps_profile_apps_select_form_' . $apps_server_name) so this might be our ticket to ride.