Pass both auxbc and qbc to user BC routines

This is intended as an optional modification to #450.  I've simply renamed some variables and tried to improve the readability and documentation of the new BC functions written by @mandli.  I also eliminated a little bit of code.