add simple caching to Domain.get_by_domain