Fix crash for endless recursion when parsing illegal e-mail address. Fixes #48
Make gen_smtp dialyze, bumping it up to modern day Erlang versions.
Use the application dependency list instead of manually starting apps.

This is the standard method of starting application dependencies and
is less error prone than attempting to ensure applications are started
whenever the client code needs those applications started.
Use application:ensure_all_started/1 instead of manually starting our dependencies.
Use our implementation of ensure_all_started/1 instead of the Erlang one.

This means that Erlang versions which do not have it built in can
continue to be supported.

Closes #51.
Merge pull request #50 from AeroNotix/master

Make gen_smtp dialyze, bumping it up to modern day Erlang versions.
DKIM signing prototype
Working DKIM signing implementation
Add notes about DKIM to README
mimemail's encode_headers now return list with one element per header.

This was needed for DKIM signing of headers, containing ";". Also,
minor performance improevement, because of no '++' operations.
Relaxed DKIM canonicalization method for headers implemented
Fix tests (broken after relaxd/simple become default)
Permissive mime decoder for folded multibyte headers.

May handle broken emails, which contains splitted not by characters,
but by bytes multibyte strings.
Tests + some fixes for permissive header parser

Conflicts:
	src/mimemail.erl
Fixed conflict between decode-attachement and broken-folding patches.
Little more verbose permissive header decoded
Syntax error in unittests fixed

Conflicts:
	src/mimemail.erl
Re-throw original error, if permissive header decoder fails
Fix permissive headers decoder (may produce list of binaries)
Remove duplicated testcase