1. A method of providing a context for executing at least a portion of software code, the method comprising: (A) receiving one or more context attributes for a context to be generated; and (B) producing a context abstraction that defines a context based at least in part on the one or more context attributes.