* Add parsing of well known IPv6 extension headers
Add classes for IPv6 extension headers defined in the IPv6 protocol
specification (RFC 2460) as well as functions for creating them from
the IPv6 class' ext_header type.
The currently known extension headers are Hop-By-Hop Option,
Destination Routing, Routing and Fragment.
* Cleanup after PR #287 comments
Pull in stuff from the std namespace with "using" instead of
qualifying with std::.
Keep starting braces on the same line.
Avoid potential copy when appending to vector.
This was broken by design. Each header held the next header's
type, which made iterating through them very tricky (you'd have
to look at the previous header's next header value to know the
current one while doing so).
Now each header contains its own value and the next header
value is computed during serialization and then reverted back
after that.