pub fn init()
This require heap allocation sadly, as it uses Arc internally, even though it could be done without it
Arc