Moved simulation into simulation class, is now more flexible/extensible