Make phantom an optional dependency