Make each syntax form its own syntax plugin (component)

- this better supports nesting
- prevent unexpected closure of wrapped segements,
  e.g. </block> will no longer be able to close a wrap segment
  opened with <div> or <WRAP>.
Include class names in function parameter lists to support 'strict' mode
Add group pragmas to test
update existing test for changes in this branch
add tests for correct pattern closing block & inline wrap segments
correct & improve file header comments for the new classes
rename test class & file to reflect addition of new tests
rename original unit test method to account for change in file & class name
Merge pull request #54 from Chris--S/individual_syntax_classes

Make each syntax form its own syntax plugin (component), fixes #23