Added in types for each backend.
A bunch of pending integration tests.