Stop expansion when we run out of nested properties.

This patch prevents the over-expansion of HrefList properties once we have run out of nested properties to expand in the original request. I encountered this while expanding group members from the following expand-property report submitted by the Mac Calendar application:

```xml
<?xml version="1.0" encoding="UTF-8"?>
<A:expand-property xmlns:A="DAV:">
    <A:property name="expanded-group-member-set" namespace="http://calendarserver.org/ns/">
        <A:property name="displayname" namespace="DAV:"/>
        <A:property name="record-type" namespace="http://calendarserver.org/ns/"/>
        <A:property name="principal-URL" namespace="DAV:"/>
        <A:property name="last-name" namespace="http://calendarserver.org/ns/"/>
        <A:property name="calendar-user-address-set" namespace="urn:ietf:params:xml:ns:caldav"/>
        <A:property name="first-name" namespace="http://calendarserver.org/ns/"/>
        <A:property name="calendar-user-type" namespace="urn:ietf:params:xml:ns:caldav"/>
    </A:property>
</A:expand-property>
```

Since, the principal-URL and calendar-user-address-set are both HrefList properties, the current implementation was recursing to expand them. But since there were no nested properties to expand for each of these properties, they were being replaced either with garbage or nothing at all.