Inital basic working functionality with documentation