Add gitignore

Ignore project-crud and database-files.
Introduce caching and functional decomposition

Break down the overall structure into more manageable bites.
Perform caching of the details document based on the return-code of the query,
which has been augmented with an If-Modified-Since-header.