start rewriting the string support in the rts

alright, so were going the route of supporting some very basic primitives:

cons : Char -> String -> String
(++) : String -> String -> String
unsafeHead : String -> Char
unsafeTail : String -> String
length : String -> Int
reverse : String -> String
slice : Int -> Int -> String -> String
compare : String -> String -> Int

notes... charToInt and intToChar are noops for Char and CChar.
notes... empty string is now implemented as NULL.
notes... the Storage area now has extra space which can be used to avoid as much copying.