Is it possible to create and manipulate the vertex of an object at runtime?

If I wanted to create a game with a building/construction element where a player could manipulate objects at run time by editing the position of vertex, and adding and subtracting them from objects, is this at all possible with Unity3D?

Yes,

See this: Unity - Scripting API: Mesh