Feature/ipboard login refactor

This module refactors the ipboard_login module by @ChrisTruncer to use a new LoginScanner class designed to abstract the heavy lifting in a reusable and testable manner.

@ChrisTruncer if you could review and test this to please make sure I didn't break anything that would be great! Thanks

branched off of https://github.com/rapid7/metasploit-framework/pull/3697
For a failed login request, the web page's source code that the framework receives after the failed request is printed to the console.  This ends up being 100-200+ lines dumped to the console.  Might be worth removing the #{result.proof} from being printed to the console.