Factorize unittest code

Add DatabaseTest and ReadOnlyDatabaseTest abstract classes
create \Payutc\Log
Update Paybox to use \Payutc\Log
Update MADMIN to use \Payutc\Log
Remove class/Log.class.php
Fix bugs in Log class

Remove require config.inc.php
Fix second parameters of array_key_exists in __callstatic
Add unittests for logger
Use SlimExtras LogWriter

The default LogWriter of Slim is too basic. This LogWriter allow
you to specify a file and prefix the log message with the level
and the date. This can be configured of course.
I also put a default configuration in config.inc.dist.php
Merge branch 'master' into unittests-user
Add unittests for User and Blocked

Add some interfaces to construct test cases (DatabaseTest and
ReadOnlyDatabaseTest).
Update travis.yml
Correct indentation
Merge pull request #123 from trecouvr/logger

Logger
Merge pull request #127 from trecouvr/unittests-user

Add some unittests for User and Blocked
Add some logs to POSS2
Add logs to POSS2->logout
Create directory logs in travis build
Le fun_id peut être null dans les tables de droits

Dans le code, ce cas est géré, et signifie que l'application et/ou
l'utilisateur concerné à le droit pour toutes les fundations.

C'est utile pour donner les droits de scoobydoo par exemple,
scoobydoo étant une application "maison", on veut qu'il ai le droit sur tous les
services pour toutes les fundations.

C'est égallement utile pour donner le droit ADMINRIGHT à un ou deux "super-admin",
qui pourront ainsi venir changer les ADMIN des différentes fundations.
Actuellement les "super-admin" sont juste admin dans toutes les fundations, il faudra donc
les retirer fundation par fundation, alors qu'avec le "null" il suffira de retirer la ligne dans la db.
Merge pull request #129 from mattgu74/right

Le fun_id peut être null dans les tables de droits
log login in loadPos