Remove name attribute

It wasn't really being used anymore.
Remove Carp dependency
Add a logger to the distribution
Add logger to the base gateway, and remove List::Util
Avoid polluting the namespace
Speed up somethings, and improve readability
Add logging information