Added  library, making unicode hopefully work for 3.1-3.2, simplified some stuff