Minimal working version ready. Accuracy tests, timing tests and speding-up required