Added methods to submit and update campaign report backs

#### What's this PR do?
1. Creates 2 new methods: The ability to submit a report back for a previously created campaign signup as well as the ability to update the report back.
2. Adds getDates method to Campaign & User models in order to convert the "created_at" and "updated_at" fields to Carbon instances.
3. A filter is created that checks for the correct API key/Application ID in the HTTP header request. A seeder class has been added to generate fake ids/key for testing purposes.

#### Where should the reviewer start?
The campaign controller is where the most changes occurred, which is located in the app/controllers/CampaignController.php file. The routes.php file has been updated to use the /campaigns/{id}/reportback route.

#### How should this be manually tested?
This can be tested using curl but easier to test out the session token authorization using something like Postman.
Looks like spaces got used here instead of tabs.

(For the record, we've always used spaces for indenting instead of tabs. But I'm pretty sure someone told me that Laravel stuff defaults to using tabs.)