Header file cleanup
C++11 friend
Adapted to newest ssvu