Initial code commit - Works for python 3.x

+ Basic test cases for 2.x and 3.x versions
+ Basic implementation of hashing program that works for 3.x python
scripts. Using mnfy package.
--Python 3.x script hashing needs to be run using atleast (only?) 3.3
--Python 2.x is not implemented.
Note: current implementation fails one test case, its necessity is to be
discussed.
mnfy27. Progress from Monday 17/6/2013

- Began work on porting mnfy to python 2.7
- Involves settling differences between Python27.asdl and mnfyasdl.asdl
(outlined in differences.txt)
Implemented Further Extensions to mnfy 2
Stopped mnfy2 from using python3 kwargs

+ small syntax changes to function calls that had (expr, *,
namedarg='val'). Star was removed. (This syntax was a new feature in
py3)
+ added  appropriate __init__ files
+ pyHasher now properly imports version dependant mnfy libs.
Turns out Print function wasn't actually being called due to different indentation type (tab vs spacing).
Python 2 seems to suffer for numbers > 10**10. while py3 has this limit around 10**12.
Also, py2 has int and long, while py3 only has 'int' which is equivalent to py2.long.

I have changed the tests to be 10**10 instead. I chose 10**10, but can't find documentation to find the real limit.
Test cases now pass except the not-implemented-yet-try-except-optimisations.
Tested exec and print using ast. Exec needed some spacing fixes.
+ Fixed minor errors.
- Ran mnfy273 on py27 stdlib.
- Fails on large numbers (pythons fault)
- Fails on specific slice e.g. "p = (p + [0,0,0,0])[:4]" returns "p = p+[0,0,0,0][:4]" which is wrong. MNFY3300 fails on this also.
I'd say mnfy273 is now fully tested.
Implemented a very basic back up minifier incase the other two fail. Tested on py2 and py3. Proper documentation and further testing to be done.
Refactored test cases,
PyHasher now opens new process to try run py2 in py2 dev env as backup.
Minor changes/bug fixes from test cases.
Added more to Documentation.pdf
Added documentation, removed some unused code in mnfy27.
+ Added unit test cases to failsafe mnfy.
+ Changed documentation to reflect this
+ Failsafe Mnfy used to leave a '\n' at the end of file. This is wasteful, and was removed.
Removed commented out code.
+ Added installation instruction to document (Forgot to mention that both python 2.7 and 3.3 need to be installed)
+ Modified documentation of failsafe mnfy function which said it returned type [lines] instead of "lines"
Removed Incorrect Comment
Merge pull request #1 from DulithaRanatunga/master

Pull Request for Requirement 1