Move to using boost::make_shared where ever possible

As documented in:
  http://www.boost.org/doc/libs/1_43_0/libs/smart_ptr/make_shared.html

Using make_shared over a manual new call will increase performance,
and reduce the number of allocations.

Change-Id: I82c1baec7528de8bfa76bc5d95e700d387a18aad
Merge branch 'make_shared'

Change-Id: I80a515b6ea3dd672eeeb72de8615617be48434eb