So how does this look to you? One thing with _resetBlendState is that it would make redundant state calls since it doesn't check anything. So I removed _resetBlendState and its been replaced with setBlendState(_blendStateDefault). To counteract that I put everything into the _initializeState method to make it so everything is explicitly called on construction and that's it.

If you preferred the old way let me know and I'll convert back.