Add test for monitoring file creation, more improvements

- build sharebox objects into tests (except main.o)
- create log class and log levels, remove sharebox_log function
- don't create empty commits
- add verbosity flag to command line arguments
- add relative path helper to monitor
- prefix monitor static functions with "monitor_"
- shorted "absolute_path" to "abs_path" in monitor, likewise with
  "relative_path"
- don't bother cloning relative path when adding a path to the list of
  paths being watched, just use it to point to position in absolute path
  string
- rename watched_path to monitor_path
- keep track of monitor's event threads; wait for them to finish when
  stopping
- use select() to check for inotify notifications instead of blocking on
  read()
- monitor_start() now creates a separate thread and returns after that
  thread is monitoring file changes
- improve reading inotify notifications by making sure that we have
  complete event records before proceeding
- add more log messages
- add monitor_join() and monitor_stop() functions