Two fixes are included in this commit:
1. There was a problem with the "window.getSelection.toString()"-function
   associated with Firefox. The workaround uses the substring()-function
   instead.
2. The getItem()-fuction been improved so that it doesn't produce empty
   string so that it doesn't produce empty
   strings.
new functions:
  - a keyboard shortcut has been implemented. by hitting ctrl+e the
    recommendation process gets started.
  - a "abort request"-button has been added. it allows the user
    to stop the ajax-request.
  - some widgets are now animated in way that they show and hide
    smoothly.

bugfixes:
  none
this commit fixes an flaw in the pagination. due to a wrong calculated
width of a <div>-element the link to the last page sliped into the next
line.
bugfixes:
  - the design of the recommendation-area now allows small widths
fixed a comment
just a minor change. moved some style to the css-file.
An add-button ist now included. it pastes a link according to the
selected reference into the text. this works in the visuell-editor
(tinyMCE aka WYSIWYG-editor) and in the text-editor.
cleaned up the different indentions styles. 3 spaces is now used
everywhere (hopefully).
Rrefactoring

The javascript code has been split up into three files:
  1. eexcess-jquery-plugins.js: functions added to jquery.
  2. eexcess-jquery-eventhandling.js: the eventhandlers.
  3. eexcess-script.js: custom functions.
The latter has been structured following the Revealing Module Pattern to
emulate the classes known from other programing laguages. more
information ragarding this design pattern can be found here:
http://blog.pluralsight.com/revealing-module-pattern-structuring-javascript-code-part-iii

furthermore the indention has been unified to three spaces in all
documents.

Todo:
  Decent comments for every method.
Refactoring

This commit deals only with coderefactoring. New features had no
priority and fixing bug had a minor priority.