Differentiate an invalid project error from other errors

Summary:
	- Refactor error into the base class and reuse from another API end point
	- Add a new field to the error response to give us more insight into the possible cause(s)

Reviewers: cramer

Reviewed By: cramer

Maniphest Tasks: T18551

Differential Revision: https://tails.corp.dropbox.com/D69600