Improve Support For Additional Banners And Selection

This PR adds more support for logo selection in the banner. It moves the data files from ```lib/msf/ui/logos``` to ```data/logos``` so they are not stored along side code. This also adds support for a logos directory in the users config directory such as ```~/.msf4/logos``` where additional banner logos can be enumerated from. This also adds support for an ```MSFLOGO``` environment variable which can be used to specify a banner to always be displayed like ```GOCOW``` supports. This also removes the static list of banners in favor of enumerating them out from the two folders so when a new banner is added in the future it is as simple as adding it to the ```data/logos``` folder. Only files ending in .txt will be identified as possible logos.

Test Procedure:
 - [x] Ensure standard banners are still being randomly displayed in the default configuration
 - [x] Ensure that when GOCOW is set, only the three cow logos are being displayed
 - [x] Set a custom banner with MSFLOGO and ensure that it, and only it is displayed
 - [x] Add a custom logo of your choice to ```~/.msf4/logos``` and use the ```banner``` command to ensure it gets displayed