Looks good Lorna, I have been doing something fairly similar. I don't know about you but I found that following the REST pattern wrote a lot of the code itself.

I'm not sure if you did this or not, but I found it beneficial to abstract the request into an interface and then do something like:

$service->handle($request)

Gives you a little extra flexibility.

I'm curious about how you handle responses, looks like you're doing things a little differently to me, so looking forward to your next post.