add benchmarks and clean up allow_attribute_action?