Made all private parts protected for easier extension, and enhanced the docs a little. Closes #14.