Use map/reject instead of reduce to find rank for entry.
Only show the 5 most relevant search results.

Removing and re-inserting a lot of DOM nodes on every keystroke takes a lot of
time. Only showing the top five makes it smoother. The problem with this
approach is that on the first keystroke many entries have to be removed (All
except five.), which introduces a perfomance impact. If this impact turns out to
be too big, two tables could be used:

 1. A table which displays the regular, unfiltered entries. The DOM nodes of
    this table are not affected during a search.
 2. A table which is empty and hidden. It is only shown while searching and
    holds at most five entries.
Don't build the whole project when running `npm test`.
Add script to update gh-pages.