tidied up soil model