lots of stuff added, simulations appear to be working