Subs refactor

optimize callout cataloging and substitution
    
- don't catalog callouts for indented paragraphs
- only sub callouts for block if callouts were cataloged
- when setting option, also set #{name}-option
- don't use option array internal, but rather csv

refactor subs handling on block
    
- add subs property to abstract_block to hold subs
- resolve subs after block is built
- don't look for callouts where they shouldn't be found
- disable callouts for block if not are found during scan
- add basebackend? to Document to check basebackend value