Adding Support For Custom Facts

  - DB migration to add support for facter fact code to be stored in the
    DB.
  - The db will maintain an md5 for each fact's code via a trigger.
  - There is a collection endpoint
  - There are some /svc endpoints:
    - /svc/facts (GET): returns a hash of 'name' => 'md5' key val pairs
    - /svc/facts (POST): Can post a JSON array of md5s and will return
      a hash of 'name' => 'md5' key/vals where the md5 was not in the
orriginal list.
    - /svc/facts/:name (GET): get the code of a particular fact.
  - There are commands to add/update/remove facts in the database