Semantic fix for operator<<

operator<<(std::ostream&, optional<T> const& o) should do nothing if "o" is not engaged (has no value), instead of printing ' --'.