First pass at getting completion. Not pretty, but it appears to work