Hi there, I am looking at writing a new backend, but am a little unsure where to begin. It would be really nice with a short guide on how to implement custom backends.