Electrochromics for smart windows: Oxide-based thin films and devices