Improvements

* runs w/o exceptions
* write profiler results to JSON file instead of stdout if asked