Maintain a list of core DAOs

This is an improvement on CRM/Core/DAO/listAll.php, wrapping in a class
and making the table names available as well.
CRM-10592: custom group and field names can be specified explicitly.
manually merged work on CRM-10592, #527
Merge pull request #663 from kurund/CRM-10592

CRM-10592