Heapless


@panagosg7 
 
I made some small but  pervasive changes to improve error handling. Basically you should now always create and throw an Error rather than crashing with error/errorstar. The former requires that you always have some source position at which the problem was caused. Anyway, perusing the diff will be explanatory. The key thing is to pull right away or else it will be very hard to merge!