Due to a bug crossing over from +evil-want-o/O-continue-comments functionality. It has also been refactored for performance. This also fixes an issue where smartparens functions could be called before smartparens was loaded, making o/O inoperable.