Separate implementation of VectorFunction

Addresses an item in #48.