Add a parametric Nullable{T} type

This adds a parametric Nullable{T} type that can represent a value of type T that may be missing. It's got a very minimal interface with the hope that this will encourage you to resolve the uncertainty of whether a value is missing as soon as possible.

Work left to do:

* [x] Get test suite working
* [x] Add a section to the manual based on the docs available at https://github.com/johnmyleswhite/NullableTypes.jl

I also did a little bit of whitespace removal along the way, which is hopefully forgivable.

May be better to output this as Nullable{T} (or Nullable{T}(), or Nullable()::T) instead of Nullable(T) to avoid confusion. Otherwise, it's not clear whether e.g. Nullable(Int) is null or not.