Added new generic pointer type "throwing", which throws when an attempt is made to use it when it is null. Added some new tests.