add string wrapper and complete functionality