Added split/joining of scanners
Inheriting mark from parent scanner
Scanners can now determine leading and trailing syntax of a token
improved close()