I'm a new homeowner and unsure about maintaining my roof. How often should I have it professionally inspected? Is there a best time to do these inspections? Also, I've heard about roof cleaning, but I'm unsure if it's necessary, and if so, how often to do it.