Final design and cleanup of the LSEL AST and parsers.

Removed all functional aspects of the LSEL AST in order to black-box
that functionality in the up-coming runtime branch.

Defined LSELExpression and LSELConstruct as completely separate branches
of the LSELToken tree. While some sub-trees of LSELConstruct make
explicit references to LSELExpression and its subtrees, this distinction
ensures that LSELExpression objects are restricted to "dumb" evaluation
in the context provided by the higher-level LSELConstruct objects

Signed-off-by: Peter Zastoupil <peterzastoupil@gmail.com>