symmetric delimiters, fix safe-paths references
fully-compliance AsciiDoc table support (psv, dsv, csv)

- classes to manage table content
- parser method for processing table content
- support for nested tables
- support for tables containing a nested AsciiDoc document
- table templates for HTML5 and DocBook45
- constant for default docbook page width
- optimization for matching any block
- rename :title regex to :blk_title
- change option attributes from foo-option to option-foo
- convenience method for checking for block title
- various compliance fixes
- let literal block masquerade as listing block
- require [source] block attribute to treat listing as source code
- don't clobber custom authorinitials
- additional method on test_helper to perform css assertions
- additional method on test_helper to retrieve xml node for xpath or css
add processing instructions for pdf backends
move title to abstract block, apply title subs
ensure section ids are unique + tests & docs
put debug statements in a block, trim some unnecessary ones

- also optimize how the render method is invoked on the @blocks array
fix typo in xmlnodes_at_path test helper
Merge pull request #73 from mojavelinux/tables-plus

Fully-compliant AsciiDoc tables!
introduce safe mode

- add a safe mode flag to Asciidoctor::Document
- define constants for each safe model level (UNSAFE, SAFE, SECURE, PARANOID)
- document the safe mode levels
- set default safe mode to SECURE_MODE
- replace the use of the safe-paths attribute with safe mode >= SAFE_MODE
- tests
Merge pull request #84 from mojavelinux/safe-mode

Introduce safe mode
Merge remote-tracking branch 'mojavelinux/title-subs' into mojave
Merge remote-tracking branch 'mojavelinux/debug-whisperer' into mojave
optimize rendering and add additional configuration

- add get_binding method to node to eliminate instance_eval call before rendering template
- pass renderer to nested document so it isn't reloaded (nested table cells)
- make eRuby implementation configurable (Erubis is measurably faster)
- add erubis as development dependency to run test case
- move strscan import to asciidoctor.rb, remove erb import
- push lazy includes through Asciidoctor.include_library & warn if multi-thread env
- make compacting endlines configurable, off by default
- add tests for preserving endlines w/ and w/o compact option enabled
- run tests w/ compact option disabled
- use instance variable references where possible to speed up rendering
- use map instead of passing a proc to invoke render on blocks because it's faster
- additional TomDoc where missing
calculate tablepcwidth more carefully
add table of contents when toc attribute is set

- also move the constants from BaseTemplate to Asciidoctor module
Merge pull request #85 from mojavelinux/rendering-enhancements

Optimize rendering and add additional configuration
Merge pull request #86 from mojavelinux/toc

Table of contents!
organize safe modes in a module, align path normalization

- tuck the safe mode levels into the Asciidoctor::SafeMode module
- use Document#normalize_asset_path to build secure path for include file
- change docs on normalize_asset_path to be clear it handles files & directories
- align docdir attribute and base_dir property on Document
- add test for activated include macro
- test demonstrate that there are no regressions in security
Merge pull request #87 from mojavelinux/security-cleanup

Security tidying
source highlighting (CodeRay & highlight.js)

- source highlighting based on source-highlighter attribute for HTML backend only
- if safe mode is SECURE or greater, document *cannot* activate source highlighting
- CodeRay for direct server-side highlighting
- highlight.js for client-side highlighting
- both highlighters require some stylesheet tweaks to work w/ default AsciiDoc styles