Added documentation (half-ready)
Reformatting