Split goals by implementation.
Update readme.
Split implementations into namespaces.