don't need free/malloc
handle arbitrary pointer size
document exactly what we are missing.