Add 3D orthogonal and perspective projection structures.

Fix #26.