Handle and Manager implementation

This is not ready to be merged. The PR is created to serve for ongoing review.

First commit is just the original prototype with items renamed.

@kvark how do I make those wonderful check lists?
I asked that already. Rust forbids Drop implementations for generic structs... :( That doesn't sound consistent with the rest of Rust. You'd think it'd just put constraints on what generic parameters are, but it forbids everything.