Remoing explicit inline
Fix for bug with dangling reference
Removing explicit inline
Adding struct predeclaration and changed commet for those who can not understand shortcut ;)
Fixes

Fix for references silly me.
Added const for unique_ptr
C++11 improvement with noexcept
Work in progress with implementing rules