Search results libraries added

Gitlab::SearchResults and Gitlab::ProjectSearchResults are libraries we
are going to use to get search results based on query, enitity type and
pagination.

It will allow us to get only issues from project #23 where title or
description includes 'foo'.

Ex:

search_results = Gitlab::ProjectSearchResults.new(project.id, 'foo', 'issues')

search_results.objects => # [<Issues #23>, <Issues #34>]
search_results.issues_count => 2
search_results.total_count => 12 (it includes results from comments and
merge requests too)

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Add search method to Note class

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Pass scope and page to Gitlab::SearchResults#objects instead of initialize

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Implement search page with filtering of results and pagination

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Improve search tests

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Save search options when switch between filter

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Improve comment search results

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Search by issue/mr title and description

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Skip description if not exist

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Forgot to save file :)

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Fix tests

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Merge branch 'improve-search-page' into 'master'

Improve search page

Fixes #1270

* added pagination support
* filter results by type
* when switch between context - search params stays
* redesign comment search results
* search Issues and MR by description too

## Screenshots:

![Screenshot 2014-08-27 09.56.18](https://dev.gitlab.org/uploads/gitlab/gitlabhq/2053220cd4/Screenshot_2014-08-27_09.56.18.png)

![Screenshot 2014-08-27 09.56.00](https://dev.gitlab.org/uploads/gitlab/gitlabhq/726c764da4/Screenshot_2014-08-27_09.56.00.png)

See merge request !1043