Auto-complete function signatures - Part 1

@Benglin - I have split up PR: https://github.com/DynamoDS/Dynamo/pull/2688 into smaller PR's, of which this is the first. 
I'm guessing we might need a test for:

1. Invalid statements (with garbage, does it blow up?)
2. Variable without type specified (e.g. ```length = 12.34;```)

Are these handled?