refactored sample.search to use ml-search-ng

https://github.com/joemfb/ml-search-ng is new project encapsulating the MLSearchContext and several search-UI directives (facets, results, metrics, input, etc.). It depends on https://github.com/joemfb/ml-common-ng, which includes MLRest, and a new MLQueryBuilder (API based on https://github.com/marklogic/node-client-api/blob/master/lib/query-builder.js).

This pull request integrates these projects. Specifically, I:

- rewrote search ctrl and template
- replaced search form in index.html with ml-remote-input directive
- removed facets and results directives (superseded by ml-search-ng directives)
- removed sample.common/MLRest (superseded by ml.common/MLRest)
- renamed MLQueryBuilder -> MLSampleQueryBuilder (avoid name collision with ml.common/MLQueryBuilder)
- removed dependency on mlFacets (unused, obsolete)

Since the Search controller is modifying URL parameters, it can't be always active (like it is now). I've rewritten the mlUser directive to not depend on a parent scope, and refactored the UserService to supports this.

These changes introduce a dependency on lodash.