Wrote design overview. Added top-level gitignore