Use std traits to remove reference and some more documentation