Clean up error messaging

- If json is returned, don't parse XML
- Handle custom errors thrown in MediaGenParser
- Remove "Error:" from Q promise rejection messages