Fix #494 - Added simd::broadcast function

braodcast<N>(v) replicates the Nth element of a SIMD register into a
new register.