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.
WebComment: templates restructuring

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

* Ported notes code from legacy to new structure

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