Clean up ISTL infrastructure
The ISTL backend is a mess structurally. I'll try and clean it up a little.