browser: ssQnaDoc enhancements

In mlModelBase:

* add optional parent param to constructor and associated
functions;
* getBaseUrl prototype function to correct handling of the
property for instances vs. prototypes;
* assignData uses mergeData instead of mlUtil.merge;
* support for `additionalPromises` to be resolved in the context
of an http-based function call;
* http function lives in prototype for overrideability;
* ensureInstance is expose as public function on svc so that it
may be overwritten if needed

For ssQnaDoc:

* break out portions of instance into prototyped subobjects:
ssAnswer, ssComment;
* support for knowing whether or not a contributor has voted on
a content object (ssHasVoted)