A journal paper on the data structures and algorithms in my DPhil thesis.