Added GetOr, which will run a function passed and cache that after running