moving shopt(ions) to their own file
a bunch of tweaks and some initla testing