Pavel_Volodko,
Сходу скачал только финальный вариант, сразу возник вопрос - почему передаются функции, а не заранее созданный объект-прототип? В смысле, в чём фишка?
upd а, идею функций понял, нужен верный $className...
upd2 и не хочется копировать...