Adapter option

Added the ability to set a preferred adapter
Throw error if incorrect preferred adapter
Add documentation
Added adapter option
Merge branch 'benrudolph-master'