rename readWithDefault to readOrElse

more consistent naming