Pluggable Task persistence: get(store, id) and save(store, task).
get(store, id)
save(store, task)
@callback get(store :: struct(), id :: String.t()) :: map() | nil
@callback save(store :: struct(), task :: map()) :: any()