SearchEngine and Expr

* defined what  a TimedDocument is (collection of TimeSlots, that can be
merge. e.g. merge( TD(Video), TD(Audio) ) => TD)

* defined the interface of a minimal inverted index
* defined SearchExpr and build a parser for lisp syntax
(and 'abc' (or 'def' 'ghi'))
* begin to build a searchengine upon IIndex interface
*
added jdom for reading timedocs