Fix for the << operator, and new operators >> and |, with docs & tests