http://en.cppreference.com/w/cpp/language/friend