1. A system comprising: one or more non-transitory computer readable storage media comprising: first appliance information; second appliance information, the second appliance information different from the first appliance information; and first application information comprising: information for generating an instance of a first appliance based on the first appliance information; information for generating an instance of a second appliance based on the second appliance information; information for configuring communications between the first appliance and the second appliance; information for configuring, through one or more application interfaces based on application configuration parameters, communications between computer devices and the first and second appliances; and one or more processors configured to: receive a first set of application configuration parameters; generate a first application instance using the first application information and the received application configuration parameters, the first application instance comprising a first application interface, a second application interface, a first appliance instance, and a second appliance instance, the first appliance instance generated using the first appliance information, the second appliance instance generated using the second appliance information, the second appliance instance being a first version of the second appliance; configure the first application instance using a first set of application configuration parameters, the first set of application configuration parameters configured to: allow, using the first application interface, a first set of commands to be processed by the first application instance; allow, using the second application interface, a second set of commands to be processed by the first application instance; enable a function of the first application instance by allowing interaction between the first appliance instance and the second appliance instance; allow the first appliance instance access to a first portion of a first network; and allow the second appliance instance to download code comprising a different version of the second appliance than the first version of the second appliance; receive a second set of application configuration parameters different from the first set of application configuration parameters; and configure the first application instance using the second set of application configuration parameters, the second set of application configuration parameters configured to: allow, using the first application interface, the first set of commands to be processed by the first application instance; deny, using the second application interface, the second set of commands from being processed by the first application instance; disallow the first appliance instance access to the first portion of the first network; and disallow the second appliance instance from downloading code comprising a different version of the second appliance than the first version of the second appliance.