Move error_handling

#### Summary:

- Moved `error_handling` from `src/stan/math/error_handling` to `src/stan/error_handling`
- Split files into two folders: `scalar` and `matrix`
- Changed error_handling namespace to `stan::error_handling` from `stan::math`
- Updated all source and test files to account for changes in namespace and location.

#### Intended Effect:

Lay out code so it's easier to find.

#### How to Verify:

Look at the files. Make sure they've moved.

#### Side Effects:

There were no code changes.
Since it's in the `stan::error_handling` namespace, functions in `stan::math` need to qualify calls to `stan::error_handling::*`.

#### Documentation:

No documentation added. This was an internal code move. If you feel like there should be documentation added, please let me know.

#### Reviewer Suggestions: 

Bob.