Add an all singing all dancing file handler