Only allow strictly positive transfers

This PR adds a new DB constraint and stops `take_over()` from creating null transfers.
Shouldn't this update the schema?