Process more complex email structures

Hi,

I've rewritten parts of the inline_attachment gem so it is able to process more complex email structures, particularly emails with attachments that have a structure like so:

    multipart/mixed              # Email content_type
        multipart/alternative    # Parts
            text/html
            text/plain
        application/pdf           # Attachment

Originally inline_attachment was only able to process the top level email parts, so as soon as I added an attachment it no longer worked. To do this I've added in rspec and added test coverage for the existing use case and then added the more complex case.

The parsing algorithms are pretty inefficient and recursive, but I suspect emails won't get too much more complex since most mail clients won't handle it.