This branch is unfinished and currently AVAILABLE to be continued. If you're interested in writing this part, please go HERE.