Stand-alone deprecation library borrowed from ActiveSupport::Deprecation