Added docs, fixed some formating issues, removed initializers