Fixing read_whole_problem_file bug

-  We fixed a couple of cyclic use calls in IO.pm
-  We moved not_null and pretty_print from PGcore into PGUtil and made
   a bunch of other changes to accomidate that
Fixed PGcore/not_null ref in AnswerHash
Changed fileFromPath back to standard importer stuff
Changed share to share_from with safe compartments.
revert unintended change
IMplementing MIkes fixes.
Further polish on pretty_print
Merge pull request #147 from goehle/readbug

Fixing read_whole_problem_file bug
Added encode_pg_and_html subroutine that encodes all html, ev3 and pgml special characters.  I also made a bunch of changes to different files to use the new subroutine.
Merge branch 'master' of https://github.com/openwebwork/pg into encodebug2

Conflicts:
	macros/PG.pl
Fixing somethings and reverting some unintended changes.
Fixing my fixes.
More polish on encoding pg and html.
Reverting unneccessary changes.
Reverting additional changes.
Merge pull request #168 from goehle/encodebug2

Encode PG Special Characters
Merge pull request #13 from openwebwork/master

Merge multiple changes.