Changed to apply decision choices

Changed to apply decision choices:
- fixed all algorithm implementations!
- java -> all algorithms!
- c -> changed all int to long, all algorithms!
- lambda-prolog -> all algorithms!
- haskell -> all algorithms!
- c# - all algorithms except quicksort so far
- scala - all algorithms except quicksort so far, uses both OO and
Functional modules (AST and To); looping algorithms like fibonacci only
use recursion so far - not while loops
- lisp - all algorithms except quicksort so far
- lua - all algorithms except quicksort so far

Other updates:
- renamed a bunch of modules to better match - e.g., as learned,
ASTImperative is more applicable than ASTC since it can be used across
other imperative languages
- changed way design choices are made (ASTDesign)