Refactor to have an inheritable class.

* Allow users to sub-class from 'Daemonizable'.
* Reimplement 'DaemonizeFunc' as sub-class of 'Daemonizable'.