pattrlist:Update(pos, remove, add)
The change that this function applies is removing remove
bytes at position pos and inserting add bytes instead.
Attributes that fall entirely in the (pos, pos + remove)
range are removed.
Attributes that start or end inside the (pos, pos + remove)
range are shortened to reflect the removal.
Attributes start and end positions are updated if they are
behind pos + remove.