Basic functionalities are now done. I am enumerating through possible extra features before refactoring for runtime extensibility. With two weeks, I'll be ready for beta testing. Meanwhile, I am going to have to decide whether to publish it myself or not.