HTTP-Method
===========
HTTP Request Method and Common Properties according to RFC 7231

SYNOPSIS
--------

`
   use HTTP::Method;

   # prefered instantiation
   my $get_mth = HTTP::Method->GET;

   # or from string
   my $str_mth = HTTP::Method->new(uc 'get');

   # testing
   if ( $mth->is_GET ) { ... }

   # introspection
   $mth->is_method_safe;
`

DESCRIPTION
-----------

There is a lot to say about HTTP Methods in [RFC 7231 Section 4. Request Methods]
(https://tools.ietf.org/html/rfc7231#section-4).
Most of the developers make the wrong assumption that it is just a 'uppercase
string'. This module will help writing better code as it does validation and
ensures right capitalization for the HTTP Method names.

As one could read in [RFC 7231 Section 4.2 Common Method Properties]
(|https://tools.ietf.org/html/rfc7231#section-4.2)
HTTP Methods do have properties and can be divided in: _Safe Methods_,
_Idempotent Methods_ and _Cacheable Methods_. These properties are just
predicate methods on a `HTTP::Method` object