You're basically putting your game into an endless loop. You have a property called "texture" that sets a property called "texture" and gets a value called "texture". So anytime you try to retrieve a value or set a value, the code just continually loops.
You're like, hey, set this object "texture" equal to something and the code is like sure, no problem, let me just check inside my setter what object I'm supposed to store that in. Oh, here it is, it's called texture, let me just set that value. Oh looks like a property, let me just check inside my setter to see what object I'm supposed to store that in. Oh here it is, it's called "texture", let me just set that value. Oh looks like a property, let me just check in side my setter to see what object I'm sup....well you get the point.
Basically your Getter and Setter should be getting and setting an object that isn't your property's name.
Crap...just saw you figured it out :) And after I wrote that nice explanation of recursion on properties! Oh well, glad you found it!