Performance improvements

As @Chris suggested, Tried to get rid Moose, used Moo, Moo::Role for better performance.