made Speaker an optional dependency