Fixes for a bunch of development issues and some specs

This fixes a bunch of development issues which took me a while to track down. Turns out making scopes named 'public' and 'private' was really stupid.