Middleware helper to support multiple API calls

Currently the 'middleware()' helper in the api module sets the result of an
API call to the 'req.remote' property. Effectively this allows a view to only
make one API call using the helper, because subsequent ones will clobber
whatever's in 'req.remote'.

This change extends the object, so long as the data objects returned from API
calls use different keys.