Compatibility fix of URI#hostname and URI#hostname=

These methods works differently with URI#host and URI#host= for IPv6
address.  Introduce method definitions from stdlib uri module for
compatibility.

Assigning bare IPv6 address via URI#host= should raise an exception but
this commit just adds a pending spec for compatibility concern.  Can we
raise an exception as well as stdlib uri module?