Expose the app identifier

There didn't seem to be a way to confidently link an AppID to a ProvisioningProfile or vice versa. With this change, instances of both classes will have `.identifier` which will return what Apple publicly calls the "Bundle ID" (but internally calls the "identifier"). If people follow Apple's recommondation, it would be a "reverse-domain name style string (i.e., com.domainname.appname)".

If you know your app's identifier, you might do something like this:

```ruby
my_app_id = "com.foo.my_app"

app_ids = agent.list_app_ids
app_id = app_ids.detect { |i| i.identifier == my_app_id }

if app_id.nil?
  # create an app id
  app_id = Cupertino::ProvisioningPortal::AppID.new
  app_id.description = "OMGapp"
  app_id.identifier = my_app_add
  agent.add_app_id(app_id)
end

profiles = agent.list_profiles(:distribution)
profile = profiles.detect { |p| p.identifier == my_app_id }

if profile.nil?
  # create a provisioning profile
end
```