Refactored action interface and corrected nasty null pointer bug