1. A method comprising: creating a first application package comprising a plurality of resources, each of said plurality of resources having resource metadata defining at least a user configuration designation and a unique identifier, said first application package having a first version; executing said first application package in a virtual environment; detecting a change to a first resource during said executing, said first resource being one of said plurality of resources; evaluating said metadata associated with said first resource and determining that said change is to be stored; storing said change in a changed resource, said changed resource being related to said first resource such that said changed resource may be used in place of said first resource when said first application is executed.