started to seperate state and parameters, ended up doing more work on keeping private variables private Closes #20 See merge request !40