Rewrite property system substantially (loosely based on ACL code)