Auto-wrapping for nsls2 library

~~In progress, don't merge  yet~~ I think this should be good for merging
because i found this to be a complicated and confusing way to specify port types. we should revisit this at a later date