Added a way to specify constant value for a function explicitly, fixed some minor issues, added 'type' attribute for variables