This reproduces the StackOverFlow Error reported in issue #21
Fixes #21 StackOverFlowError with recursive models
Also, consolidates some "should parse model" logic