Great question and definitely something that would be doable. We typically recommend a pattern where you would use blocks for secure stateful configuration to external systems, including passwords, etc., and use a Prefect Collection (can be both public or private) to store a collection of related tasks.
However, nothing stops you from adding extra methods to your custom blocks, this should be possible too, but the most common and easiest to manage pattern is to use a combination of Blocks for stateful secure configuration and collections for business logic/code.
I'll cc @alex since he's the best person to answer this.