Feature/conference refactor

**Work in progress; not ready for merge**

# Purpose
The conference submission service is largely untested. It's also currently hard to test, since it's mostly made up of a few large functions with many responsibilities. This patch refactors the existing code into smaller, most testable units, and tests those units.

# Changes
* Refactor conference submission logic into helper classes / functions
* Test refactored code

# Side effects
None expected
This shouldn't matter since these tests should only be run in DEV_MODE, but the recipient will be `-endpoint-poster@osf.io` (with leading dash) if not in DEV_MODE. Probably not relevant for this test, though, so I think it's fine.