Cosmetic Refactoring, Tests to New Constructor, XLSM Support

Howdy,

I've been reviewing the code and test suite in preparations for some larger changes which we're planning to make.  This pull includes:
- Cosmetic refactoring (changing order of lines, indentation, whitespace, comments)
- Completely redid Roo::Base.number_to_letter  Tests still pass
- Adjusted tests to use the new options hash, reducing the number of warnings thrown when running the suite.
- Added .xlsm to the list of accepted filetypes for Roo::Excelx
- Added tests for .xlsm files

Let me know if you have any questions.
Can you transform this code to use `&&` instead `and`?