fixed reference of rvalue issue on osx
removed lvalue ref operator<< completely
merged tmp branch; conflict resolved