def namespaces(*args)
      case args.size
      when 0
        mapper.namespaces
      when 1
        if args.first.is_a?(Hash)
          mapper.namespaces.update(args.first)
        else
          mapper.default_ns = args.first
        end
      when 2
        mapper.default_ns = args.first
        mapper.namespaces.update(args[1])
      else
        raise ArgumentError, 'bad arguments'
      end
    end
def namespaces(*args)
      case args.size
      when 0
        mapper.namespaces
      when 1
        if args.first.is_a?(Hash)
          mapper.namespaces.update(args.first)
        else
          mapper.default_ns = args.first
        end
      when 2
        mapper.default_ns = args.first
        mapper.namespaces.update(args[1])
      else
        raise ArgumentError, 'bad arguments'
      end
    end
namespaces(hash) -> Hash
    namespaces       -> Hash

 Updates and returns class-level prefix mappings.
 When given a hash of mappings merges it over current.
 When called withot arguments simply returns current mappings.

 === Example:
    class Cat
      include Peanuts
      namespaces :lol => 'urn:lol', ...
      ...
    end