Updated documentation, still work in progress.