Refactor for testing and benchmarks

Hi Scott,

I wanted to get some feedback from you on some refactoring I did. Initially I had just intended to add a benchmark  for falcore but that led to a bit of an alive down the rabbit hole day ;)

Here's an issue I created to talk about this branch: https://github.com/ngmoco/falcore/issues/31

Cheers,
G