Should this be setup like the controller class name so that the action method gets camel cased too? e.g.

    //                                                                     v-- here
    return 'action' . str_replace(' ', '', ucwords(str_replace(array('_', '-'), ' ', $actionName)));

That would make `some-thing` map to `actionSomeThing` instead of `actionSomething` (not that PHP cares about the casing of method names anyway, but consistency is probably a good idea)