fix toString()
add a few methods