Implement post sync in PostService

This adds a REST implementation for posts sync but also had to refactor
quite a few things.

Some notes:

- PostServiceRemoteXMLRPC uses `wp.getPosts` instead of `metaWeblog.getRecentPosts`.
- There are a few FIXMES that should go once the relevant fixes for
  wp.com REST API go live.
- Post format selection fails since I removed the post format sync.
  Post formats are included in rest options, but need to be parsed.
  They need a separate call on XML-RPC.
- I removed blog sync from the PostsViewController pull-to-refresh.
  Featured images rely on Media objects to be present and it only works
  because it syncs the media library on login. We could just store
  {ID,URL} since that's all we need for featured images.
- Categories are now created from the posts response, but we need to
  make sure they refresh when the category selector is displayed.
- In general, more testing is needed regarding everything that was
  synced on post refresh before. We can't depend on the user refreshing
  posts to load formats or categories.