[Major] Removed the use of a ThreadLocal for the PrivilegeContext

ThreadLocals are bad idea when ClassLoaders come into play, so removing
the need makes Privilege better usable in different contexts.