Move texture stuff into its own package