Wrote debug() function and replaced fprintf() usage with it.

The debug() function was defined as a wrapper to fprintf() so
that it includes fflush() after each call. This allows tail -f
to be used against the log file.

All instances of fprintf(lf, ...) were replaced with debug(...).
Let NOTESFS_DEBUG environment variable to control the debug log file.

The NOTESFS_DEBUG is now checked on startup and, only if defined, open
a log file for debugging output. Call it like this:

NOTESFS_DEBUG=debug.log ./notesfs notes.db mountpoint

The debug() wrapper was extended to return gracefully if no output
stream is defined (if NULL is passed).
Added basic debugging output for each called operation.

For now, only the path is logged along with the call.
Added struct fuse_file_info debugging output in the log file.
Added processing result to UNLINK and GETXATTR debug log.