#2,3,4 are pretty straightforward with masking.
#1 is a doddle with the Phantasm plugin, and way more flexible and editable than ascii. See wot I dids.