Brett Hall, design and implementation of v1.0
