The idea is here but it’s definitely missing something. Keep at it!
Thanks, it's definitely unfinished but it functions. I'd like to post another version with completed models and environments.