hal::*::lock: Initial commit

This is a basic locking primitive for buillding synchronization
primitives.
hal::cortex_m3::sched: Add CritSection

This implements a simple abstraction for critical sections where
interrupts must be disabled.
lib::shared: Initial commit

This is a simple container for thread-safe state with access guarded by
a CritSection.
lib::queue: Initial commit

This implements a simple thread-safe queue.
os::task: Add support for blocking
os::mutex: Initial commit
os::cond_var: Initial commit
Merge pull request #11 from bgamari/mutex

Added a few synchronization primitives.
Removes references to cast module.
Also fixes change from `extern unsafe` to `unsafe extern`. fixes #39
Merge pull request #40 from bharrisau/remove_cast

Removes references to cast module.
Start building stm32f4 target

Allowing errors at the moment until it build successfully.
Merge pull request #42 from bharrisau/travis-stm32f4

Start building stm32f4 target
A hack to make the code compile again

Rustc forcefully exports stack_exhausted and eh_personality, resulting
in symbols being defined twice. We counter this by stripping the
symbols from all object files being produced.
Adding script to summarise and submit build stats
Merge pull request #44 from bharrisau/travis-stats

Adding script to summarise and submit build stats
Extracted lang items to dedicated file.
Merge pull request #43 from farcaller/fix-missing-lang-items

A hack to make the code compile again
Fix up pushing to zinc-stats repository
Merge pull request #47 from bharrisau/travis-stats2

Fix up pushing to zinc-stats repository
Refactor statistics support

Move ssh keys around and include starting ssh-agent