Handle arbitrary delimiters with cs and ds

Resolves #105 by adding flexibility such that cs/ds can change/remove any arbitrary surrounding character, rather than just the usual text object delimiters and html tags &c.