Allow other actions to be taken in the defer as well.

The following code will not cause RaygunRecovery() to send the panic to Raygun.
```
defer func(){
   goraygun.RaygunRecovery()
   // do something else here
}()
```
Summary of changes:
* Allow the Raygun configuration to be set by a method ```SetRaygunConfig```
** In frameworks like Revel / Tigertonic, the where the ```RayGunConfig.json``` file is stored doesn't always make sense in relation to where the code is.
* Added a method called ```SendErrorToRaygun``` to allow sending an error to Raygun.
* ```RaygunRecovery()``` creates the stack trace and call ```SendErrorToRaygun``` method.
* Add a defer to close the file after it has been read. That way a pointer to the file contents in memory is not kept around.
* Fixed spelling mistake in comments.