Add Serializable interface

Serializable interfaces will implement Serialize, a function that
returns a std::array of char types with length 1024
Add SmbMessage class to store and serialize SMB messages.
Enforce SMB dialect format

There must be at least 2 dialects and the format is always 0x02, meaning a null
terminated string.
Enforce SMB protocol on SMB message
Restore writing of netbios and smb message headers to buffer
Limit writing of data to only serialized bits

size() of std::array gives the whole array size, not just the data that we have
written to it
Fix available read size
Add comment about rewriting netbios packet length
Use C++11 range-for statement
Edit smbmessage include guard to match file name
Merge branch 'master' into serializable
Merge pull request #9 from tcoyne/serializable

Add SmbMessage class to store and serialize SMB messages.
Add Client class, which wraps socket functionality

Wrap the functionality of creating and connecting to a server and writing and
reading data. Create a class called Client to do this. There is no change in
functionality - it still writes the first header, reads the response, and exits.
Set error for sucess at beginning of functions.
Correct comment for hints socket type
Edit include guard in socket.hpp to match file name
Use class member initializer instead of initializer list

Yay C++11
Add sammbox namespace around Client class