add incremental mass recalculation

should solve #151 better than recalculating only once per frame :)