Make cookbook following JS more explicit

Since the markup for the follow buttons is a bit different between the
cookbook show and the cookbook partial this separates the JS
functionality for updating the dom elements that should be updated after
a successful follow/unfollow. This also adds an additional feature spec
to test the follow button in the cookbook partial context.