Cache storage behaviour.
get(name :: atom()) :: {:ok, result :: any()} | nil
init(keyword()) :: :ok | {:error, any()}
put(name :: atom(), result :: any()) :: :ok | {:error, any()}