Updated branch with formatting changes.
Groomed code, added defaults, paved way for a getDetails method.
Manual merge