Restructured and added documentation