Only include 'Expires' header in a subscribe request if provided

The use of nksip_lib:get_integer/2 means that when undefined, it
defaults to zero.  This removes the possibility of relying on the
default expiration for the package.
Use similar handling of dialogs for subscriptions

This allows us to lean on the existing mechanism for updating the
remote_target; necessary for refreshing subscriptions within a dialog.

Once the new engine changes are released, this can be more completely
implemented.
Provide the ability to reSUBSCRIBE within an existing dialog

The same event and expires options should be provided as this
information is currently not obtained from the dialog.

This avoids us needing to do any deep surgery on dialogs for the
moment until the new engine is in place.  What a SipApp will need to
do is remember the package and provide it with the re-subscribe.
Merge remote-tracking branch 'dwhite/subscriber' into experimental