Hi George,
Take a look at another, existing widget. You can unzip them, they are archive files. Then you see what the structure is.
I would also like to know how I zip them together. Do I create a folder and put them inside to create a Zip file or Do I highlight them and send them to Zip Folder?
That is correct you select both files and add them to a zip folder which should have the same name as the client module, also after zipping the file you have to rename it to .mpk
Also note that you need atleast one directory inside your widget named exactly the same as the client module. Thus in your case you would have the following structure:
--custom.mpk
|--package.xml
|--custom
|--BasicWidget.js
|--BasicWidget.xml