Grandfather T in type{T<:SomeAbsType}
immutable abstract type can have mutable sub-type

And a small edge case bug fix
curly bug fix
Tighten argument edge cases
very guess type improvements

container type ref bug fix.
nothing means Nothing.
try to obtain the type from arguments better.
substring bug fix
at-doc lint fix
Empty tuple can be returned in guess type
Fix Vector{Int}[] case