V1.0

Working, un-optimized version.