Change nesting structure of example group metadata.

Historically, an example group's metadata hash has
exposed its computed values via a nested `:example_group`
subhash, and then exposed it's parent's metadata via
an additional `:example_group` subhash nested within
that subhash.  Example:

describe "Parent", :parent => true do
  context "child", :child => true do
    $meta = metadata
  end
end

`$meta` in this example would be a hash like:

{
  :parent => true, # inherited,
  :child => true,
  :example_group => {
    :line_number => 2, # and other computed properties
    :example_group => {
      :parent => true,
      :example_group => { :line_number => 1 } # and others
    }
  }
}

As you can see, this is quite confusing. Why should an example group's metadata have an `:example_group` key that returns its
own metadata?

This commit changes to the following example structure:

{
  :parent => true, # inherited,
  :child => true,
  :line_number => 2, # and other computed properties
  :parent_example_group => {
    :parent => true,
    :line_number => 1 # and others
  }
}

...which is far easier to understand. This also aligns
with how an example's metadata works: it's computed
properties are available directly off of its metadata
hash rather than off of a nested subhash.

We've changed from `:example_group` to `:parent_example_group`
for the parent metadata both because it's a better label
(an example group doesn't have an example group, but it may
have a parent example group) and also because it allows us
to provide backwards compatibility and deprecation notices
when the `:example_group` key is accessed. Note that an
example's metadata hash continues to have a `:example_group`
key that returns the group's metadata; this is not deprecated.