whole bunch of updates and refactoring - primarily added methods to pretty print model and predictions