search: inline script as a separate file

* Moves the inline code into a separate javascript.

* Refactors the module to use AMD syntax.

* Fixes the search_list to position itself according to its parent
  and not some element that may not exist.

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
Reviewed-by: Charalampos Tzovanakis <charalampos.tzovanakis@cern.ch>
Reviewed-by: Kamil Neczaj <kamil.neczaj@cern.ch>
search: mustache templates via hgn

* Adds the hogan plugin to require.js (hgn.js).

* Uses some mustache templates from JavaScript code.

Signed-off-by: Yoan Blanc <yoan.blanc@cern.ch>
Reviewed-by: Charalampos Tzovanakis <charalampos.tzovanakis@cern.ch>
Reviewed-by: Kamil Neczaj <kamil.neczaj@cern.ch>