shader: add wb_read_file() and partial wb_vs_from_file() implementation