fixed subtle bug in set_uniform, fixed light shader