Create URI::GlobalID scheme

Addresses https://github.com/rails/globalid/issues/6
`URI::GlobalID.parse` ends up calling `URI::GlobalID.new` which can raise `URI::InvalidComponentError` when `app`, `model_name` or `model_id` are invalid and `URI::InvalidURIError` when the `scheme` is not `gid` (this is done by URI::Generic). I could make change this so that only `URI::InvalidComponentError` is raised.