WebComment: first iteration of record notes

* Notes are extracted from record comments using regular expressions and a
collection of predefined markers;
* Notes are extracted at comment creation time and persisted to the database;
* Notes are displayed similar to comments, but in a different template;
* Other features: modular extraction regex, unit tests, mark note as viewed DB
support.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
WebComment: hierarchic notes support

* Notes can now be hierarchic: Note on Page 1, Fig. 3;
* Refactoring.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
WebComment: templates restructuring

* Notes are now displayed as a custom view for comments;
* Notes and Comments share a base template, which they customize.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
comments: notes porting

* Ported notes code from legacy to new structure

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
comments: cosmetic changes

* The comments' text area is now larger;
* Included 'add comment' form tooltip which explains how to add notes;
* Added a warning when viewing the notes, informing the user that this is a
summarized view of the whole record discussion.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
comments: basic grouping

* Notes are now grouped by their full marker (e.g., P.1: F.2:).

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
comments: notes order by creation date

* Notes are now ordered by their comment's creation date.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>
comments: notes improvements

* Notes are displayed hierarchically;
* Notes can be toggled.

Signed-off-by: Adrian-Tudor Panescu <adrian.tudor.panescu@cern.ch>