add 'out-of-order' parsing of doc_blocks and nesting > two levels deep

resolves issues #8 and #9