Better calc detection & fallback, code optimisations & cleanup

Changes
 - Added better calc detection
 - Added fallback support for any browser which doesn't natively support calc. (Mainly needed for android 3+ & 12.x opera)
 - Various code optimisations such as removing unnecessary creation of jQuery objects & node caching.
 - Code clean up by re-writing parts to the most common style in the file & removal of unnecessary comments.
 - Replaced the ; with a + on the self executing function as some minifiers strip the first one out.
 - Added a ! to the first comment to prevent minifiers from stripping it out by default.

I apologise in advance if I was meant to create separate pull requests for these changes. This is my first on github.