replace pseudo element element with a more versatile mechanism.

The hardcoded before and after elements are replaced by a versatile
PseudoElement.
This change also adds pseudo element support for processing instruction.

Change-Id: Ia8d0e9567d59e8013166e4c51e7ac8fa019bfe4e
Signed-off-by: Carsten Hiesserich <carsten.hie@gmail.com>
18 files changed