I am too lazy to explain hows and whys.
- splitElem() with begin and end;
- make line splitting optional?
- overlapping markup is painful... what to do?
- allow interfacing with other highlighters/parsers;
- use Marca as highlighters/parsers output rather than HTML?
- otherwise implement full list of HTML entities decoding?
- allow non-span elements in HTML output?
- more DRY;
- API review;