 	if not to?
 		to = from
 		from = 0
-	Math.random() * (to - from) + from+	Math.random() * (to - from) + from
+
+###
+# utils
+###
+
+# combine the given options(last item in arguments) with the default options
+Bu.combineOptions = (args, defaultOptions) ->
+	defaultOptions = {} if not defaultOptions?
+	givenOptions = args[args.length - 1]
+	if typeof givenOptions is 'object'
+		for i of givenOptions
+			defaultOptions[i] = givenOptions[i]
+	return defaultOptions

	return @

###
# Math
###

# calculate the average number of several numbers
# you can pass several numbers or a Array of numbers
Bu.average = ()->
	ns = arguments
	ns = arguments[0] if typeof arguments[0] is 'object'

# polyfill
###

# define a property for a class
Function::property = (prop, desc) ->
	Object.defineProperty @prototype, prop, desc

# Array
Array::each = Array::each or (fn) ->
