Repaired [Outputs] related logic bugs

- There was missing logic when using --recover with a file from command-line, this was repaired by checking if the recovery file base string is populated before the CommonOutputAction attempts to populate it. (closes #2661)
- Added a test that uses --recover with a name
- Doing the above un-covered an issue regarding the order of outputters, the checkpoint outputters should always be called last because the outputters themselves may and do have data that needs to be recovered.