Shadow catcher is a nice start but it does only that, a lot of work dealing with adding CGI to real imagery requires a more advanced matte material. For example if you want existing real objects from the real footage to cast shadows on CGI objects you need matte objects that cast a shadow but do not appear in the rendered image themselves, basically with a force alpha=0. But if you add a non environment 3d light source it should be possible to have that illuminate the matte objects and so real object are brighter. With some ray-switching and a few other hoops to jump through it can come close but it's not really artist friendly.
Not really sure what the best approach is and what it should do exactly but there is definitely a bit of a workflow hole in the feature set for when mixing cgi and real footage.
(btw, iray does a nice trick where you can just assign any material to matte objects and just flag them as matte object. This way the matte objects have a ver definable material so they can mimick the light interaction of the real objects that they are matte-ing. )