Added support for TI Launchpad

These additions add suport for TI Tiva C-Series Launchpad boards, in particular the EK-TM4C1294 Connected Launchpad. Support for others can be added very easily by simply adding another `defined(...)` clause in the header's `#if` statements. 

Also, the `result()` functions now take one argument: a user-supplied array of `byte` (that is, `unsigned char` or `uint8_t`) allocated to 32 bytes. Before, these functions returned a raw pointer to the SHA function's internal state, which could allow the user to accidentally (or intentionally) corrupt said state. Now the library copies bytes from the SHA's state to the user-supplied array.