Clarifying NGObject hierarchy separated from Injectable.
Added TODO comment for removing Constructable interface.
Renamed variables for better readability.
Starting to clean up function, closure, promise, and http callbacks.