Write API documentation, fixes #30 and fixes #6.
Re-style the docs a bit.
Fill in missing question in FAQ.