serve(): implement option cache_control_max_age, defaults to 1 hour