add support for texture_rect texture type in shaders, add new form, clear up a few things in the API