lots of string function improvements placed, clearly more work needed on overal function design consistancy