Merge branch 'release/M1' into master

* release/M1: (113 commits)
  chore(karma, grunt): better configuration for codecoverage detection
  chore(karma): correct the configuration which files should be used for testing
  refactor(tests*): refactored some tests to not have multiple expectations in a single test
  refactor(gruntfile): removed some unnecessary outcommented lines
  chore(gitignore): added .nodemonignore while it will automatically created and removed during grunt execution
  fixed(gitrequesthandler): the filename was not correctly logged when file was not found
  chore(shell): added some shell scripts to automate some tasks
  chore(karma): added the karma-spec-reporter to package.json and switched to this reporter to get a more detailled output about the executed tests
  chore(karma): added test coverage with istanbul
  Refactored after code review
  refactor(app.js): removed a unused and outcommented static route
  refactor(git): removed the unused wrapping from fs.exists to a promise
  test(gitrequesthandler): added a test for the case when repository url is missing
  refactor(tests): the tests for each requesthandler are now in it own files
  refactor(lib): renamed the function AbstractError to AppError
  refactor(*): underscore.js removed, jshint updated because it had some dependencies to underscore
  chore(grunt): Added new tasks and node modules to measure the code coverage of our tests
  chore(grunt): grunt:dev set singlerun=false to let the browser alive after the test run
  Fixes #25 Refactored grepResultParser
  chore(grunt): gruntfile optimized to let run karma in background with output
  ...
Refactored grepSearcher. The parsers send as a result just a string instead of an array
Closes #26 and #27. Search controller was refectored and tests were included for search controller and service
Fixed failing tests
procfile changed
fix(app.js): changed the handling for env.host

When no hostname is explicitly set in the environment variable the app.list function will be called without the hostname
This was a problem with heroku
Merge branch 'master' into develop

* master:
  fix(app.js): changed the handling for env.host
  procfile changed
Refactored searchSearcher to follow the single responsibility principle
Added vim temporal files to the ignore list
Fixed failing build
Removed unused console logs
Refactored grepSearcher
Small refactoring
Refactoring: Extracted textSearcher from searchRequestHandler
Removed unused require statement
Trying to solve a broken build
Fixed failing tests: new version of marked broke grep parser unit tests
Added tests for searchrequesthandler
Updated reade file with new mdwiki info for travis