Fill in _objects_by_name for constraints to enable multi-threaded runs (...

...closes #3690)

When a constraint is added, we have to add the MOOSE object pointer into the _objects_by_name array for thread 0 (which we correctly do). But we also have to add an empty array for the given name for threads with TID > 0. That way the call to getObjectsByName() is not broken for calls
with TID > 0.  It mistakenly reports 'no object of a given name', but the object is there, just not for the given thread.