Fixes #2 and #3. Improvements.