Commit this spike.
Add in providers because I'm a dummy.
what the hell
some bug fixes related to the rearranging and refactoring.
Fix error handling impl. Abstract the helpers a bit to fix a bug. Catch remote errors and bubble them up.
Fix up the cap provider.
Skip all the tests for now because lol tests.
add in ability to specify the environment