1. A method for controlling the execution of business logic of a multi-tenant application that is shared by multiple tenants for use in a multi-tenant application development system that allows features of the multi-tenant application to be turned on or off at run time for each particular user entity of a plurality of user entities that are part of a particular tenant in the multi-tenant application development system, wherein the multi-tenant application comprises a plurality of code blocks, wherein each code block corresponds to a particular feature of the multi-tenant application and has an enabling predicate associated with that particular code block, the method comprising: prior to run time: configuring a permissions library that is shared by multiple tenants based on interaction with an interactive control panel at a computer by an administrator associated with the particular tenant of the multi-tenant application development system, wherein configuring the permissions library comprises: defining, for each particular user entity of the particular tenant, an on/off state for each particular code block via the enabling predicate associated with that particular code block, wherein each particular user entity of the particular tenant is either: an individual user of the particular tenant, a user group that corresponds to a specific group of users of the particular tenant, a group of users of the particular tenant that have been assigned to a profile, or a default value that represents and corresponds to all users of the particular tenant; and storing a hash of the configured permissions library in a custom settings cache as a cached permissions library for the particular tenant for use at run time when one or more user entities of the particular tenant attempts to invoke a particular one of the code blocks to determine if that particular one of the code blocks is to be executed, wherein the custom setting cache is provided at the multi-tenant application development system.