account for visual c++ 10 hickups, namely not working template friends and a wrong resolving of object constructor