Project feature checks should not trigger database queries

Whenever you initialize a Project it calls Project#setup_project_feature. This in turn calls Project#project_feature which executes a database query. This is executed every time we initialize a Project, anywhere.

To remove the query we should do two things:

  1. Add a column to projects called has_project_feature with the type boolean
  2. In setup_project_feature we check if this column is set to true, if not we create the row and set the column to true. We do not perform any checks when this is set to true

This will remove the need for any extra queries after the first time a project is initialized.