[core] Pluggable auditing logger

Provides a cleaner way to log requests to Hue.

e.g. of events:
{"1393901417":
 {"status": 200, "impersonator": null, "service": "useradmin", "url": "/useradmin/",
  "user": "test", "ip_address": "127.0.0.1", "authorization_failure": false},
"1393901418":
 {"status": 200, "impersonator": null, "service": "useradmin", "url": "/beeswax/",
  "user": "test2", "ip_address": "127.0.0.2", "authorization_failure": false}
}

Config:
  # The directory where to store the auditing logs. Auditing is disable if the value is empty.
  # e.g. /var/log/hue/audit.log
  ## audit_event_log_dir=

  # Size in KB/MB/GB for audit log to rollover.
  ## audit_log_max_file_size=100MB