Late database connection

Open the connection the later we can (not at the Dal construction, but at the first connection need).

It may makes some BC break if user test the connection result on construction.

But I think it is a good practice
* The connection is not opened when a script doesn't need it
* The database resource is less occupied by script using late connection

NB: please consider this PR after #17 as I included the main commit about PHP5.4 migration
Please fix alignment.