add policy assignment mixin

updated checkbox tree to support flat list, included unit test