Changed to release_roles :all as roles that needs database.yml

Other roles besides :app need to be able to access the database. For
example, a dedicated db node that runs its own migrations but is not have
the :app role needs the Ruby code and database.yml. In migrations.rake of
capistrano-rails, the migrations can be run on a role specified by the
migration_role.

This commit is to ensure that all release_roles have a copy of database.yml
on setup, in order that they can connect to the database.
Merge pull request #6 from capistrano-plugins/database_client_roles

Changed to release_roles :all as roles that needs database.yml
Ensure database.yml on newly created clients has correct credentials. fix #5

This commit changes the was database.yml is created. Previously, a randomly
generated password would be created on database set up, but also when a client
does not have the database.yml file. If a new client if created after the db,
it gets a database.yml file with a newly generated random - and incorrect -
password.

In this commit, when the db and db-user are first created, an archetype
database.yml file is created on the primary db role with the credentials
for the db. This is subsequently copied on every setup to all clients, so
newly created clients now also get the right credentials for connecting
to the db.