Block cipher operation modes: ECB, CBC, CTR and CCM

Hey.

This is the followup to #1200. Refactored, rebased and without the crypto shell example. It adds support for ECB, CBC, CTR and CCM (RFC 3610) block cipher operation modes. This is the version we are currently using in our DTLS working branch. To omit a pull request of death for DTLS we would be happy if we could manage to merge this before.

Regards
Nico
Depends on your use case. In the last software project there was a group which wanted to implement an update mechanisms for riot. With their approach they need all riot functions be linked. But ok, in general you're right about this. Nevertheless in my opinion splitting this up makes it still more readable. Additionaly I think this PR is more than just splitting existing modules in separate ones, so feedback about the rest would be great.