Manipulating microposts: Routes for the Microposts resource

Note we won't need actions like 'new' or 'edit' in the MicropostsController, because we won't provide separate page (nor shall we provide RESTful url such as GET /microposts/new, GET /microposts/1/edit, PATCH /microposts/1) to create or edit micropost. User will create micropost via the home page of this sample app, view other users' microposts on user's show page. The interface to the Microposts resource will run principally through the UsersController & StaticPagesController.

We only need create and destroy actions from Microposts resource, resulting in routes like:
     Prefix Verb   URI Pattern               Controller#Action
 microposts POST   /microposts(.:format)     microposts#create
  micropost DELETE /microposts/:id(.:format) microposts#destroy
Access control: Add faling tests that requires user signin for create or delete microposts

Because we have yet not built web interface (i.e. web pages) for microposts, we directly operates at the level of the individual micropost actions (i.e. POST or DELETE to the url)
Access control: Get the test passed by adding a before filter to MicropostsController

We also did some refactoring first:
Because the before filter 'signed_in_user' is used in both UsersController & MicropostsController, we move it into the Session helper which is a module and included by the ApplicationController (base class)