move config and analyzer into their own modules