Fixed a SEGFAULT in setPose reported in #18

Previously, calling setPose() on an interactive marker causes a SEGFAULT if applyChanges() was not called on the server at least once since the marker was created. I traced the actual SEGFAULT to the doSetPose function. The value of header passed from setPose() is invalid because, in this case, marker_context_it = marker_contexts_.end().

I added a check for this case and, if there is no marker is present, instead use the header from the pending update. I'm not 100% sure that this is the correct solution, so it would be good to get input from someone who is more familiar with the code base.
An assertion would probably be the right thing, since you really should never hit this code path.