finishes analyzer, core functionality done, partial refactor