In CPController get rules and actions directly from user defauls (which is thread-safe unlike NSArrayController) + minor cleanups