Implement free practice mode

resolves #15