Add uniform uploading to programs