Refactor: split seed and password generation. Define new interfaces and packages.