vcat container and eltype promotion, internal speedups

Supersedes and closes #733.
(as a side note, I guess I need to stop putting commentary in commit messages -- the compartmentalization is nice, but GitHub doesn't exactly show them off.)