finished up AtomicPermission class